Chimbuko la Vibe Coding
Unakumbuka siku uliyoteleza kuandika kila mstari wa kodi. Ulianza kubonyeza Tab na kuruhusu Model Kubwa ya Lugha (LLM) kumalizia mawazo yako.
Kati ya mwaka 2024 na mapema 2025, uundaji wa programu ulibadilika. Tulihama kutoka kwa kanuni kali za kisintaksi (syntax) hadi katika hali ya mtiririko kamili (pure flow). Andrej Karpathy anaita hali hii Vibe Coding.
Vibe Coding inamaanisha kuunda programu kupitia hisia (intuition) badala ya usanifu wa kina. Huandiki tena mantiki (logic) mstari kwa mstari. Unafanya kazi kama kiongozi wa bendi (conductor). Unahukumu matokeo kulingana na jinsi mfumo unavyohisi na unavyofanya kazi.
Hii inahisiwa kama nguvu ya ajabu (superpower). Kazi kama vile kuandaa seva au kuandika maswali ya SQL huchukua sekunde chache. Watengenezaji binafsi wanazindua bidhaa kwa kasi zaidi kuliko wakati wowote uliopita.
Lakini kasi hii ina mtego.
Unapoweka kodi kwa AI bila kuelewa misingi, uwezo wako wa kufikiri kwa kina hupungua. Unategemea "black box". Unapata kodi ya haraka, lakini hujui kama itakuwa rahisi kuitunza (maintainable).
Mzunguko wa Vibe Coding unaonekana hivi:
- Andika maelekezo (prompt) ili kuongeza kipengele.
- Endesha kodi na uone kama inafanya kazi.
- Ikishindwa, nakili kosa (error) na ulipelekie AI na uiombe ifanyiwe marekebisho.
Hii inafanya kazi kwa mifano ya awali (prototypes). Inashindwa kwa usanifu halisi (real architecture). Hii hupelekea kodi ya Frankenstein (Frankenstein code).
Kodi ya Frankenstein ni mchanganyiko wa vipande vya AI vilivyoshonwa pamoja. Kila kipande kinatatua tatizo dogo, lakini mfumo mzima unakosa maono.
Kadiri mradi wako unavyokua, utaona matatizo haya:
- Mitindo isiyo na msimamo. AI hutumia mitindo tofauti katika kila faili.
- Muunganisho uliokithiri (Extreme coupling). AI huchukua njia rahisi na kuvunja mipaka ya moduli.
- Upofu wa muktadha (Context blindness). AI husahau kazi (functions) zilizopo na kutengeneza nakala au hitilafu (bugs) mpya.
Matokeo yake ni mfumo dhaifu. Hakuna binadamu anayeuelewa. AI haiwezi kuubadilisha bila kuharibu kila kitu kingine.
Vibe Coding imefanya uundaji wa programu uwe rahisi kufikiwa. Imeondoa kazi zinazochosha. Lakini kasi bila mwelekeo hupelekea kufilisika kiteknolojia (technical bankruptcy).
Ili kujenga mifumo inayoweza kukua (scalable systems), unahitaji zaidi ya hisia tu. Unahitaji umakini na udhibiti wa ubora.
Source: https://dev.to/jcmexdev/el-origen-del-vibe-coding-j00
Optional learning community: https://t.me/GyaanSetuAi
