There's more to web development than PHP

There's more to web development than PHP

Asee mi ukweli nimemaliza diploma na language tulizopiga Backend ni php only tena darasa zima mimi na rafiki angu ndo tulioelewa kozi tuliwafanyia watu wengi project, ila for now c++ nimejifunza. Sasa najiuliza tu darasani tuko 27 na karibia nusu hawakuelewa PHP leo asome python ataanzia wapi? Hua natamani niwambia wanafunzi wanaotaka hii career waache kukurupuka ila nashindwa wanadhani informatics ni kubofya keyboard tu na kuuza nayo sura.

Diploma gani mtu hajui PHP? Chuo gani hicho?
 
Sijaponda HTML wala JS, website yoyote ile lazima iwe na HTML coz ndio the only markup language inayotumika kwenye DOM, na JS ni lazima pia coz ndiyo programming language peke yake inayorun kwenye browser.

Ninachopondea mimi ni uvivu wa developers wengi wamekaa hawajisomei concepts mpya zinazotoka kila siku wanabaki kustick na stack ileile moja, mfano kwenye front end, kuna new tools kama React.js, ni Javascript ile unagawa kila kitu into components, mfano site kama ya JF, hii sehemu ya kuandikia reply ni component moja, sehemu ya post ni component nyingine, navigation menu ni component nyingine, unaziandika zote separately as their own classes, then mwisho wa siku unaziunganisha tu kirahisi, very clean, na kila component moja inahandle logic yake kivyake, very easy ku~debug, scale, change anything, also important very easy to read. Ila wengi wamestick na kuunganisha kila kitu kwenye page moja unakuta page moja ndefu code ipo everywhere, php, js, html vyote humohumo vimerundikana kwenye divs tu. Its an old fashioned way of doing things.

mkuu nishakuelewa. ivi ukisoma language moja kama html au javascript haitoshi kusimamisha website moja ya nguvu kama jf, fb n.k?
 
Sijaponda HTML wala JS, website yoyote ile lazima iwe na HTML coz ndio the only markup language inayotumika kwenye DOM, na JS ni lazima pia coz ndiyo programming language peke yake inayorun kwenye browser.

Ninachopondea mimi ni uvivu wa developers wengi wamekaa hawajisomei concepts mpya zinazotoka kila siku wanabaki kustick na stack ileile moja, mfano kwenye front end, kuna new tools kama React.js, ni Javascript ile unagawa kila kitu into components, mfano site kama ya JF, hii sehemu ya kuandikia reply ni component moja, sehemu ya post ni component nyingine, navigation menu ni component nyingine, unaziandika zote separately as their own classes, then mwisho wa siku unaziunganisha tu kirahisi, very clean, na kila component moja inahandle logic yake kivyake, very easy ku~debug, scale, change anything, also important very easy to read. Ila wengi wamestick na kuunganisha kila kitu kwenye page moja unakuta page moja ndefu code ipo everywhere, php, js, html vyote humohumo vimerundikana kwenye divs tu. Its an old fashioned way of doing things.
language moja haijitoshelezi kufanya kila kitu kwenye page nzito kama jf, fb n.k mh javascript au html?
 
I think the whole issue about using PHP sio sababu ya uvivu, but kuna factors kibao. And this is my opinion, and it applies to all other languages.

1. PHP is common in Tanzania because people are comfortable with it, and because most developers who learn web dev learn from people who use PHP; which makes a pipeline of PHP developers.

2. Preference, most developers have their goto language; for example for most web tasks I default to Rails, for backend and middleware I prefer Golang. So if people prefer PHP let them be. Kuna some world renowned engineers who swear by certain languages or frameworks.

But also remember PHP has one of the easiest stacks to get started, and it also has a lot of templates which people like to use for simplicity, which in return I agree with you kuwa people abuse them to make bad code.

About JS, with the exception of NodeJS(server-side, proven over years), React and Angular(client-side, Backed by Facebook and Google respectively), and basic JS + JQuery; no one should waste their time with any other JS frameworks since they are known to have a very short lifespan before they become legacy.
 
language moja haijitoshelezi kufanya kila kitu kwenye page nzito kama jf, fb n.k mh javascript au html?

Front-end ya JF hakuna kingine zaidi ya HTML, CSS na JavaScript. Japo kama wanafanya server side rendering kuna uwezekano pia wa kuwepo language nyingine ontop mfano PhP au Python ni kitu tunaita templating, mfano kupopulate haya majibu mtu anaweza kuamua kuandika a for loop ya kuregenerate each row katika language yake anayotumia na template engine itagenerate html automatic.

Ila tukija kwenye backend its a different story, JF usiiweke level moja na Facebook, JF while ina u~complex wake ndio, na inaweza kua handled na language moja vizuri tu, naona concurrent users JF at peak wanachezeea kama 5,000. A single instance ya AWS inaweza handle that much traffic kama iko optimized na data kua cached vizuri, naona wanatumia websockets pia siku hizi kufanya push notifications, once again 5,000 people ni wengi ila sio wengi kuhitaji different languages kufanya different tasks. Tukirudi kwenye swala la Facebook its a different story, FB is one of the most complex web apps duniani, wanatumia probably kila popular language unayoujia kwenye kazi zao, FB ni kubwa zaidi ya unavyofikiri.
 
I think the whole issue about using PHP sio sababu ya uvivu, but kuna factors kibao. And this is my opinion, and it applies to all other languages.

1. PHP is common in Tanzania because people are comfortable with it, and because most developers who learn web dev learn from people who use PHP; which makes a pipeline of PHP developers.

2. Preference, most developers have their goto language; for example for most web tasks I default to Rails, for backend and middleware I prefer Golang. So if people prefer PHP let them be. Kuna some world renowned engineers who swear by certain languages or frameworks.

But also remember PHP has one of the easiest stacks to get started, and it also has a lot of templates which people like to use for simplicity, which in return I agree with you kuwa people abuse them to make bad code.

About JS, with the exception of NodeJS(server-side, proven over years), React and Angular(client-side, Backed by Facebook and Google respectively), and basic JS + JQuery; no one should waste their time with any other JS frameworks since they are known to have a very short lifespan before they become legacy.
Kuna Tofauti gani kati yaweb developer na web designer??
 
Kuna Tofauti gani kati yaweb developer na web designer??

Web designers do frontend(kinda), they deal with the interface and interactions(Looks, colors, animations etc). In more developed companies or well established systems a Web designer role is done by UI/UX designer or anyone with knowledge of human-computer interactions. There's a science behind colors that complement each other, menu, arrangement etc and people in design know that best and are most times not expected to know any coding, they mock and design interfaces.

Web developer is someone who writes code, usually expected to be able to do either frontend or backend(or both, a.k.a full stack). They can be involved in design decisions if there's no web designers. A web developer is expected to know just enough web design to make a decent looking website.

The two roles are nowadays overlapping because most web developers "do web design" through using templates or established patterns for certain types of site, and web designers is becoming a small subset of UI/UX designers
 
Front-end ya JF hakuna kingine zaidi ya HTML, CSS na JavaScript. Japo kama wanafanya server side rendering kuna uwezekano pia wa kuwepo language nyingine ontop mfano PhP au Python ni kitu tunaita templating, mfano kupopulate haya majibu mtu anaweza kuamua kuandika a for loop ya kuregenerate each row katika language yake anayotumia na template engine itagenerate html automatic.

Ila tukija kwenye backend its a different story, JF usiiweke level moja na Facebook, JF while ina u~complex wake ndio, na inaweza kua handled na language moja vizuri tu, naona concurrent users JF at peak wanachezeea kama 5,000. A single instance ya AWS inaweza handle that much traffic kama iko optimized na data kua cached vizuri, naona wanatumia websockets pia siku hizi kufanya push notifications, once again 5,000 people ni wengi ila sio wengi kuhitaji different languages kufanya different tasks. Tukirudi kwenye swala la Facebook its a different story, FB is one of the most complex web apps duniani, wanatumia probably kila popular language unayoujia kwenye kazi zao, FB ni kubwa zaidi ya unavyofikiri.
ok mi naona ni ujanja wako tuu kusimamisha web kama jf kwa kutumia langauge moja.
utaweza iwapo utakua ume i master vizuri hiyo lugha ila kama ni mtu wa kusoma partially partially utaweza tumia hata lugha kumi wakati mwanaume aliemiza language moja vizuri anafanya yote.
 
ok mi naona ni ujanja wako tuu kusimamisha web kama jf kwa kutumia langauge moja.
utaweza iwapo utakua ume i master vizuri hiyo lugha ila kama ni mtu wa kusoma partially partially utaweza tumia hata lugha kumi wakati mwanaume aliemiza language moja vizuri anafanya yote.

Hukupata point yangu naona, sio kila mtu atatengeneza a forum, forum ni rahisi kutengeneza given enough time, kuna web apps nyingi, kuna mobile apps pia zenye function mbalimbali. Kujua lugha mbalimbali doesn't mean mtu kasoma partially, its possible kumaster popular languages angalau tatu, kustick na language moja inalimits nyingi sana, cha muhimu sana kwenye programming than kumaster language ni programming itself, inayoinvolve abstract thinking, uwezo wa kucome up with an efficient solution, ukiwa na skills hizo sioni sababu ya kujilimit na language moja huku u can catch up language mpya very easily ukatumia strenghts zake kusolve matatizo.

Siku hizi kampuni kama Google wanaweka machine learning kwenye apps zao almost zote, sasa fanya machine learning kwa kutumia Php uone ilivyo painful, utaishia kuport from other languages kama Java au C++. Kama mtu karidhika na apps ndogondogo za hapa na pale simlaumu, aendelee kua primitive, ila kama ni mtu ambitious anapenda kusolve big problems you can't run away from mastering at least 3 languages zenye strengths zake tofauti.
 
mkuu Ghraph naomba unipe opinion yako, which is the best combination of programming languages to master ili mtu uwe fundi katika field ya software development?
 
mkuu Ghraph naomba unipe opinion yako, which is the best combination of programming languages to master ili mtu uwe fundi katika field ya software development?

Inategemea na aina ya software unayotaka kutengeneza kwa kua kila language ina strength zake na weakness zake pia.
Mfano, mtu ambaye anataka kudeal na hardware intensive apps, chukulia mfano wa google maps, video games, 3d imaging softwares, ni vizuri kwenda na somewhere between C/C++ the latter being a better option kwa kua C++ ina more advanced features zinazorahisisha development kuliko C.

Mtu anayetaka web development, JavaScript is obvious kwa frontend, tukija backend sasa kuna options nyingi, kama ni kuserve just simple data through an api au simple database queries most languages would work just fine, japo hapa pia naipenda JavaScript(Node.js) kwa kua iko consistent na ina async model which to me I think is powerful kwenye kuserve api, ila kama kuna kitu intensive, mfano fikiria app kama Prisma ambayo inatumia Artificial intelligence kutransform picha into a drawing, hapo utahitaji kucheza na libraries za machine learning ambazo nyingi zipo kwenye Java, C++, na these languages are very fast kwa image manipulations pia.

Personally I think languages ambazo kila software developer inabidi ajue ni C/C++, Java, JavaScript kwa kua zinaapply kwenye fields nyingi. Ila kama huna plan kabisa ya kuja kugusa any cpu intensive apps, then C/C++ unaweza zitupitilia mbali ukadeal na JavaScript, Python, Php, kuna Go pia very awesome language. Mobile development ofcoz inabidi ujue Java for android, Swift for iOS.

C/C++ ni muhimu sana, ndio languages zilizo close to the hardware ukiachana na assembly, I think overall they will make anyone a better programmer kuliko languages nyingine zote, na kama mtu anajua one of this languages vizuri anaweza pickup language nyingine yoyote very fast except strict functional programming languages, zenyewe zina model tofauti kidogo ya kufikiri.
 
Umeona uzi mkuu??? Mbona kuna mengi yamesemwa au umeona tu php mhandisi wa software?!!

Embu tupe mawazo yako software engineer

"Asee mi ukweli nimemaliza diploma na language tulizopiga Backend ni php only tena darasa zima mimi na rafiki angu ndo tulioelewa kozi tuliwafanyia watu wengi project"

Unawezaje kupewa diploma kama umeshindwa kuelewa kozi muhimu kama hiyo?

Mhandisi wa software ni zaidi ya PHP, lakini kulingana na diploma yao somo kuu mojawapo la programming lilikuwa PHP.

Uhandisi wa Software ni sawa kabisa na ule wa Madaraja, unaweza ukawa na knowledge nzuri ya madaraja lakini usishike mwiko kujenga daraja hilo.
 
"Asee mi ukweli nimemaliza diploma na language tulizopiga Backend ni php only tena darasa zima mimi na rafiki angu ndo tulioelewa kozi tuliwafanyia watu wengi project"

Unawezaje kupewa diploma kama umeshindwa kuelewa kozi muhimu kama hiyo?

Mhandisi wa software ni zaidi ya PHP, lakini kulingana na diploma yao somo kuu mojawapo la programming lilikuwa PHP.

Uhandisi wa Software ni sawa kabisa na ule wa Madaraja, unaweza ukawa na knowledge nzuri ya madaraja lakini usishike mwiko kujenga daraja hilo.
What's your point mkuu??
 
Anzisheni open source project wengine tutacontribute.
Kwa Tz unaweza ukacontribute peke yako...lkn nilimsikia mo kuwa kampuni yake inatoa fungu kwa ajil ya youth development... Xa kwann asianzishe mashindano au maonyesho ya projects nchini watu wajitume zaid...
Anyway mada nzur sana lkn changamoto ipo vyuon hii field ya computer inachukuliwa easy sana...asilimia 70 ya wahitim wote wa comp.eng..comp science n IT hawajui programming..
 
What's your point mkuu??

Uhandishi wa Madaraja unahitaji skills za mambo mengi katika ujenzi e.g.
1. Hali ya hewa
2. Taarifa za udongo
3. Uchoraji
4. Teknolojia
4. Resources kwaajili ya ujenzi
5. n.k

Katika Uhandisi wa software kunahitajika skills kibao e.g.
1. Programming|Developing|Designing
>Presentation layer(UI+UX)
  • Unajua UI/UX framework gani?
  • Unajua UI/UX language|scripts gani?
  • etc
>Data layer
  • Unajua Data access framework gani?
  • Unajua Data access tech zipi?
  • etc
>Application layer
  • Unajua Web|Desktop|Mobile framework gani?
  • Uko fit kwenye language zipi Java, C#, C++,C,PHP ?
  • etc
2. Testing
3. Project Management
4. Analysis
5. Misc-skills
> Computer
> Networking
> Security
> Deployment, Maintenance, etc
 
Inategemea na aina ya software unayotaka kutengeneza kwa kua kila language ina strength zake na weakness zake pia.
Mfano, mtu ambaye anataka kudeal na hardware intensive apps, chukulia mfano wa google maps, video games, 3d imaging softwares, ni vizuri kwenda na somewhere between C/C++ the latter being a better option kwa kua C++ ina more advanced features zinazorahisisha development kuliko C.

Mtu anayetaka web development, JavaScript is obvious kwa frontend, tukija backend sasa kuna options nyingi, kama ni kuserve just simple data through an api au simple database queries most languages would work just fine, japo hapa pia naipenda JavaScript(Node.js) kwa kua iko consistent na ina async model which to me I think is powerful kwenye kuserve api, ila kama kuna kitu intensive, mfano fikiria app kama Prisma ambayo inatumia Artificial intelligence kutransform picha into a drawing, hapo utahitaji kucheza na libraries za machine learning ambazo nyingi zipo kwenye Java, C++, na these languages are very fast kwa image manipulations pia.

Personally I think languages ambazo kila software developer inabidi ajue ni C/C++, Java, JavaScript kwa kua zinaapply kwenye fields nyingi. Ila kama huna plan kabisa ya kuja kugusa any cpu intensive apps, then C/C++ unaweza zitupitilia mbali ukadeal na JavaScript, Python, Php, kuna Go pia very awesome language. Mobile development ofcoz inabidi ujue Java for android, Swift for iOS.

C/C++ ni muhimu sana, ndio languages zilizo close to the hardware ukiachana na assembly, I think overall they will make anyone a better programmer kuliko languages nyingine zote, na kama mtu anajua one of this languages vizuri anaweza pickup language nyingine yoyote very fast except strict functional programming languages, zenyewe zina model tofauti kidogo ya kufikiri.
Shukrani sana mkuu kwa mchango wako mujarabu, nina shida sana ya kukutana ana kwa ana na mtu mwenye upeo mkubwa wa mambo kama wewe, naamini hata ikiwa mara moja kwa wiki/wezi bado kuna vitu adimu nitajifunza... uko dar es alaam au jiji gani?
 
Back
Top Bottom