AI-യുടെ ഈ കാലഘട്ടത്തിലും ഡെവലപ്പർമാർ പ്രോഗ്രാമിംഗ് പഠിക്കണോ?

കോഡിംഗ് പഠിക്കുന്നത് ഇപ്പോഴും പ്രസക്തമാണോ എന്ന് പല ഡെവലപ്പർമാരും ചോദിക്കാറുണ്ട്.

AI-ക്ക് കോഡ് എഴുതാൻ കഴിയുമെങ്കിൽ, സിന്റാക്സ് (syntax) പഠിക്കാൻ എന്തിനാണ് വർഷങ്ങൾ ചിലവഴിക്കുന്നത്?

ഉത്തരം 'അതെ' എന്നാണ്. നിങ്ങൾ ഇപ്പോഴും പഠിക്കേണ്ടതുണ്ട്.

എന്നാൽ നിങ്ങളുടെ ശ്രദ്ധ മാറേണ്ടതുണ്ട്.

പണ്ട്, ഡെവലപ്പർമാർ സിന്റാക്സ് മനഃപാഠമാക്കാൻ സമയം ചിലവഴിച്ചിരുന്നു. ലൂപ്പുകൾ (loops), ക്ലാസുകൾ (classes), റൂട്ടുകൾ (routes) എന്നിവ എങ്ങനെ എഴുതണമെന്ന് നിങ്ങൾ പഠിച്ചു.

ഇന്ന്, സിന്റാക്സ് എന്നത് മാത്രം എല്ലാമായിരുന്നില്ല.

AI വളരെ വേഗത്തിൽ സിന്റാക്സ് എഴുതുന്നു. എന്നാൽ AI-ക്ക് നിങ്ങളുടെ ബിസിനസ് ലോജിക് (business logic) മനസ്സിലാകില്ല. അതിന് നിങ്ങളുടെ ഉപയോക്താക്കളെ മനസ്സിലാകില്ല. അത് എഡ്ജ് കേസുകൾ (edge cases) ശ്രദ്ധിക്കാതെ പോകാനും സാധ്യതയുണ്ട്.

പേയ്‌മെന്റ് പരാജയപ്പെട്ടാൽ ഒരു ഉപയോക്താവിന്റെ ബുക്കിംഗ് നഷ്ടപ്പെടാൻ പാടില്ല എന്ന് AI അറിയണമെന്നില്ല. ഒരു ഡാറ്റാബേസിലെ ഡ്യൂപ്ലിക്കേറ്റ് റെക്കോർഡുകൾ എങ്ങനെ കൈകാര്യം ചെയ്യണമെന്ന് അതിന് അറിയില്ലായിരിക്കാം.

അതാണ് നിങ്ങളുടെ ജോലി.

യഥാർത്ഥ ഡെവലപ്‌മെന്റ് എന്നത് പ്രക്രിയയെക്കുറിച്ച് ആഴത്തിൽ ചിന്തിക്കുക എന്നതാണ്. നിങ്ങൾ സ്വയം ചോദിക്കേണ്ടത് ഇതാണ്:

  • നെറ്റ്‌വർക്ക് സാവധാനത്തിലായാൽ എന്ത് സംഭവിക്കും?
  • ഉപയോക്താവ് പേജ് റീഫ്രഷ് ചെയ്താൽ എന്ത് സംഭവിക്കും?
  • API ഒരു എറർ (error) നൽകിയാൽ എന്ത് സംഭവിക്കും?
  • ഒരേ പ്രവർത്തനം രണ്ടുതവണ നടന്നാൽ എന്ത് സംഭവിക്കും?

എല്ലാ മെത്തേഡുകളും (methods) നിങ്ങൾ മനഃപാഠമാക്കേണ്ടതില്ല. നിങ്ങൾക്ക് സിസ്റ്റത്തെക്കുറിച്ച് ധാരണയുണ്ടായിരിക്കണം.

നിങ്ങൾ Laravel പോലുള്ള ഒരു ഫ്രെയിംവർക്ക് ഉപയോഗിക്കുന്നുണ്ടെങ്കിൽ, കൺട്രോളറുകൾ (controllers), മൈഗ്രേഷനുകൾ (migrations), മിഡിൽവെയറുകൾ (middleware) എന്നിവ എന്താണ് ചെയ്യുന്നതെന്ന് നിങ്ങൾ അറിയണം. AI-ക്ക് മികച്ച നിർദ്ദേശങ്ങൾ നൽകാൻ നിങ്ങൾക്ക് ആ സാങ്കേതിക പദങ്ങൾ (terminology) അറിയേണ്ടതുണ്ട്.

"ഈ ഫീച്ചർ നിർമ്മിക്കുക" എന്ന് പറയുന്നതിന് പകരം, നിങ്ങൾ ഇപ്രകാരം പറയണം:

"ഒരു ക്യൂഡ് ജോബ് (queued job) നിർമ്മിക്കുക, റിക്വസ്റ്റ് വാലിഡേറ്റ് ചെയ്യുക, ഒരു ഡാറ്റാബേസ് ട്രാൻസാക്ഷൻ ഉപയോഗിക്കുക, പരാജയങ്ങൾ ഉണ്ടെങ്കിൽ അവ ലോഗ് ചെയ്യുക."

ഇത് ഉയർന്ന തലത്തിലുള്ള ജോലിയാണ്.

AI കോഡ് നിർമ്മിക്കുന്നു, എന്നാൽ നിങ്ങൾ അതിന് ദിശാബോധം നൽകുന്നു. എന്താണ് സുരക്ഷിതം, എന്താണ് സ്കെയിലബിൾ (scalable), എന്താണ് ക്ലീൻ എന്ന് തീരുമാനിക്കുന്നത് നിങ്ങളാണ്.

നിങ്ങൾ കോഡ് എഴുതുന്നതിൽ നിന്ന് കോഡിനെ നയിക്കുന്നതിലേക്ക് മാറുകയാണ്.

വിജയിക്കാൻ, സിന്റാക്സ് മാത്രം പഠിക്കുന്നത് നിർത്തുക. പ്രക്രിയകൾ (processes) പഠിച്ചു തുടങ്ങുക.

ഒരു ഫയൽ എങ്ങനെ അപ്‌ലോഡ് ചെയ്യാം എന്ന് മാത്രം പഠിക്കരുത്. ഫയൽ സൈസ് പരിധികൾ, സുരക്ഷ, സ്റ്റോറേജ്, അപ്‌ലോഡ് പരാജയപ്പെടുന്നത് എങ്ങനെ കൈകാര്യം ചെയ്യാം എന്നിവ പഠിക്കുക.

നിങ്ങൾ ഈ കഴിവുകളിലും പ്രാവീണ്യം നേടണം:

  • കമ്മ്യൂണിക്കേഷൻ (Communication): വ്യക്തമായ നിർദ്ദേശങ്ങൾ നൽകിയാൽ AI കൂടുതൽ നന്നായി പ്രവർത്തിക്കും. നിങ്ങളുടെ തീരുമാനങ്ങൾ ലളിതമായി വിശദീകരിക്കുമ്പോൾ ക്ലയന്റുകൾക്ക് നിങ്ങളിൽ കൂടുതൽ വിശ്വാസം തോന്നും.
  • ഡിസൈൻ സെൻസ് (Design Sense): AI-ക്ക് ഒരു ഡാഷ്‌ബോർഡ് നിർമ്മിക്കാൻ കഴിയും, എന്നാൽ മോശം സ്പേസിംഗോ ആശയക്കുഴപ്പമുണ്ടാക്കുന്ന ബട്ടണുകളോ നിങ്ങൾ തിരിച്ചറിയണം.
  • ക്രിട്ടിക്കൽ തിങ്കിംഗ് (Critical Thinking): AI തെറ്റായ വിവരങ്ങൾ നൽകാനോ (hallucinate) പഴയ പാക്കേജുകൾ ഉപയോഗിക്കാനോ സാധ്യതയുണ്ട്. നിങ്ങൾ ഓരോ വരിയും പരിശോധിക്കുകയും ടെസ്റ്റ് ചെയ്യുകയും ചോദ്യം ചെയ്യുകയും വേണം.

വ്യക്തമായി ചിന്തിക്കുകയും പ്രവർത്തിക്കുന്ന ഉൽപ്പന്നങ്ങൾ നിർമ്മിക്കുകയും ചെയ്യുന്ന ഡെവലപ്പർമാരാണ് ഭാവിയിൽ വിജയിക്കുക.

പ്രോഗ്രാമർമാരുടെ ആവശ്യകത AI ഇല്ലാതാക്കിയിട്ടില്ല. അത് നിലവാരം ഉയർത്തുക മാത്രമാണ് ചെയ്തത്.

പ്രോഗ്രാമിംഗ് പഠിക്കുക. എന്നാൽ ഒരു നിർമ്മാതാവിനെപ്പോലെ (builder) ചിന്തിക്കാൻ പഠിക്കുക.

Source: https://dev.to/clintonagburum/should-developers-still-learn-programming-in-the-age-of-ai-4gaa

Optional learning community: https://t.me/GyaanSetuAi