उंटावर बसून शेळ्या हाकण्याचे 'प्रोजेक्ट मॅनेजर' वाले दिवस आता आय. टी. तून केव्हाचे हद्दपार झालेत... आता साऱ्या प्रोजेक्ट ची संपूर्ण जबाबदारी हाताच्या बोटावर मोजता येतील (बहुतेकदा एकाच हाताच्या!) इतक्याच लोकांवर टाकून कंपनी चक्क, ' it's your baby now!' म्हणत आपले हात वर करताना दिसते!
त्या हाताच्या बोटांवर मोजता येतील इतक्या लोकांचे एक सामुदायिक नाव आहे... 'फुल स्टॅक डेव्हलपर' (Full Stack Developer)!
"काय भावा, झाली का प्लेसमेंट! आता काय मग जावा डेव्हलपर, डॉट नेट की आरामदायी टेस्टर?"...
"अहो नाही अजून डाटा बेस अडमिनीस्ट्रेटर (DBA ), बिझनेस इंटेलिजन्स (BI ), फ्रंट इंड डेव्हलपर (Web Developer ) सारखे ऑप्शन्स देखिल आहेत!"...असे संभाषण हल्ली ऐकू येत नाही!
बिचारा एकटाच सगळं करत सुटलाय, फूल स्टॅक लेकाचा!
आमच्या काळात धबधबा होता....हो संथ वाहणारा धबधबा!... आय. टी. च्या भाषेत आम्ही त्याला वॉटरफॉल (Waterfall Model) म्हणायचो... आज काल काय सगळेच घोड्यावर! नुसते घोड्यावर नाही तर घोड्यावर बसून दर दोन आठवड्याला ह्या धबधब्या वरून उड्या घेतात!!!... ह्या प्रकाराला आय. टी. भाषेत आम्ही अजाईल (Agile Framework) म्हणतो... आणि तो दोन आठवड्याचा काळ म्हणजे स्प्रिंट (Sprint)! अजाईल (Agile ) चा शब्दशः अर्थ जरी लवचिक असा असला तरी त्यामुळेच समस्त आय. टी. जनतेच्या पोटाचा घेर आणखी वाढून त्यांची लवचिकता पार नाहीशी झालीय! ( इथे तेच सुटलेले पोट धरून हशा!) :)
पूर्वी फक्त युद्धात आणि क्षेपणास्त्र सोडायला संगणकाचा वापर होई...आज तर एखादा गुलाबजाम जरी मागवयचा म्हटला तर कॉम्प्युटर लागतो! (स्विगी चे आभार! ) ....??...कॉम्प्युटर की स्मार्ट फोन?... ... स्मार्ट फोन हा देखिल एक कॉम्प्युटरच... पूर्वी कॅलक्युलेटर वर आकडे मोड करणाऱ्या माणसाला देखिल कॉम्प्युटर म्हणत! आहे ना गम्मत!... ह्याच माणसाने त्याचे काम थोडे सोपे व्हावे म्हणून कॉम्प्युटर, लॅपटॉप, मॅकबुक, टॅबलेट, मोबाईल, स्मार्ट फोन, आयपॉड, आयफोन, आयपॅड, ब्लूटूथ ही सगळी वंशावळ बनवली.
वाढती डोकी...वाढत्या गरजा...वाढती मागणी... सतत काहीतरी नविन निर्माण करण्याचा अट्टाहास... काहीतरी वेगळे करण्याचा प्रयत्न आणि झटपट डिलिव्हरी ही आता काळाची गरज ठरलीय आणि आम्ही सगळे इंजिनीअर्स म्हणजे, "पिझ्झा डिलिव्हरी गाय" झालो आहोत ! (खऱ्या अर्थाने बैल!)
संगणकाची निर्मिती झाली तेव्हा किती प्रोग्रामिंग लँग्वेजेस होत्या? २?...५?... जास्तीत जास्त१०?...आज २०१८ चालू आहे आणि ह्या आय. टी. इंडस्ट्रीत लोकांची पोटं भरतायेत तब्बल १०,००० प्रोग्रामिंग लँग्वेजेस!!! कॉम्प्युटरची भाषा ना मला समजत ना तुला... भाषाच नसेल तर संभाषण कुठले करणार आणि संभाषण नाही तर सॉफ्टवेअर कसा बनवणार...पण मग पाच पन्नास लँग्वेजेस पुरे कि, दहा हजार कशाला?...तर सतत काहीतरी नवीन बनवण्याचा ध्यास...आधीपेक्षा जास्त सोईस्कर बनवण्याचा प्रयत्न...ते एका अर्थाने बरंच झालं नाहीतर इतकी वर्ष आम्ही कशावर पोसलो गेलो असतो?
आता मी सॉफ्टवेअर इंजिनिअर झालो म्हणून माझ्या बापाला थोडीच येणारेय कॉम्प्युटरची भाषा...मग अशा बाळबोध लोकांसाठी कॉम्प्युटर सोबत हितगूज करायची सोयीची भाषा म्हणजेच ऑपरेटिंग सिस्टम! ( पूर्वी मीच इतका बाळबोध होतो की ही ऑपरेटिंग सिस्टम सुद्धा ऑपरेट करता येत नव्हती!)
युनिक्स (Unix) आणि मायक्रोसॉफ्ट विंडोज (Microsoft windows) ह्या दोनच ऑपरेटिंग सिस्टम माहीत होत्या...आता त्यांचे किती प्रकार आलेत!... रिअल टाइम वेगळी, नेटवर्क ऑपरेटिंग वेगळी, टाइम शेअरिंग निराळी आणि मोबाईल ऑपरेटिंग सिस्टम भलतीच! त्यातही उपप्रकार म्हणजे विंडोज ऑपरेटिंग सिस्टम ची, विंडोज ९५, ९८, २०००, विंडोज एक्सपी, विंडोज ७, विंडोज ८, विंडोज १० अशी दिवसेंदिवस प्रगल्भ होत जाणारी व्हर्जनस! लिनक्सचं तर विचारूच नका! फक्त उबंटू (ubuntu) आणि लिनक्स (Linux) ही भावंड आहेत हे लक्षात असू द्या!
आय. टी. इंजिनिअर हा सामान्य झालाय आता...तो कसा तर प्रत्येक घरात एखादा तरी सॉफ्टवेअर इंजिनिअर होतोय म्हणून नाही तर प्रोग्रामिंग लँग्वेज किंवा संगणक प्रणाली (operating system) शिकताना सामान्य माणसाची जी दमछाक होईल तशीच दमछाक आता ह्या इंजिनीअर्सचीच व्हायला लागलीय आणि त्या अर्थाने तो आता सामान्य झालाय!
अहो एक कोबोल (COBOL) किंवा सी ( C Language ) वर लोकांची अख्खी हयात (कारकीर्द) निघायची... आता पाच पिढ्या सन मायक्रो सिस्टम(Sun Microsystem) च्या मानगुटीवर बसलेलं जावा (JAVA) चं भूत त्यांनी ओऱ्याकल (Oracle) च्या डोक्यावर ठेवलं आणि स्काला (Scala) च्या भीतीने ते पार पिसाळलं! गेल्या चारच वर्षांत आणखी पाच पिढ्या काढून ते मोकळं झालं!!! अधून मधून अजगर (python language) दंश करतच होता! आता जावा ५ (JAVA 5) ही पूर्ण न समजलेले आमचे इंजिनिअर जावा १० (JAVA 10) चा पल्ला कधी गाठणार? त्यातही जावा ८ (JAVA 8) मधे नव्याने आलेली लॅम्बडा एक्स्प्रेशन्स (lambda expressions) आणि (Stream API) म्हणजे बाहुबली मधल्या तेलगू भाषेवरून सरळ कालकेयाच्या 'कीलिकी' भाषेत संभाषण केल्याचा प्रकार!... तेव्हा तिथे बिचाऱ्या सॉफ्टवेअर इंजिनिअरचा टिकाव कसा लागणार?... बरे इतके करूनही भागले नाही म्हणून की काय पुढे कोटलीन (Kotlin) अा वासून उभा आहे! (For those who don't know, Google just announced that it will officially support Kotlin on Android as a “first-class” language) ...आता बोला!
इथे जावा (JAVA) ची ही अवस्था तर तिकडे मायक्रोसॉफ्ट (Microsoft) ने, (ज्याने एकच विंडो बनवली आणि आता त्याच खिडकीतून बाजारातील सगळा चांगला माल विकत घ्यायचा सपाटा लावलाय! ) सन मायक्रो सिस्टम (Sun Microsystem) ने जावा (JAVA) दिली नाही म्हणून नवीन प्रोग्रामिंग लँग्वेज बनवण्याचा चंग बांधला आणि मग अख्खा जावा (JAVA 1) कोड कॉपी पेस्ट करून ( इंडियन भाषेत आम्ही ह्याला कोड डेव्हलपमेंट म्हणतो!) त्यापासून सी शार्प (C #) बनवली... त्यातला जो भाग चांगला बनला तो जावा (JAVA) च्या पुढच्या पिढीने ढापला! मायक्रोसॉफ्ट ने मग ए एस पी (ASP) म्हणू नका, व्ही बी (VB) म्हणू नका कि सी शार्प (C #) म्हणू नका, सगळ्याना जाळ्यात (.Net) अडकवले!
तिकडे दुर्लक्षित ऑब्जेक्टिव सी (Objective C) ला सोबत घेऊन स्टीव्ह जॉब आपल्या सगळ्या वस्तूंना 'i' ('आय' म्हणजे मीपणा) लावत सुटला!
आणि मग स्मार्टफोनचा जन्म झाला! ब्लॅकबेरी (Blackberry), सिंबियन (Symbian), आय ओ एस (iOS), अँड्रॉइड (Android) अशा आपापल्या हॅण्ड सेटचे गोडवे गाणाऱ्या मोबाईल प्रणाल्या (mobile operation systems) जन्माला आल्या!
तिकडे ब्राऊझर (Browser OR Front end programming) ने ही कात टाकली. फ्लॅश (Flash) आणि फ्लेक्स (Flex) अकाली मृत्यू पावले ! HTML आणि JavaScript यांना Ajax नावाचा शांत (Asynchronous) पुत्र झाला! तो अभिमन्यू सारखा नेटवर्कचे चक्रव्यूह भेदून ब्राऊझर (Client side) मधून थेट सर्व्हर (server side) पर्यंत जायला शिकला! त्याच Ajax आणि OOPs (object oriented programming) ची गाठभेट झाली आणि मग jQuery, ExtJS , Angular js, Node js, ember अशी सर्वगुण संपन्न देखणी पोरं जन्माला आली!
गूगल (google) ला देखिल कर्णाच्या अवतारात पॉलिमर (polymer library) नावाचा गोंडस पुत्र झाला...गूगल ने स्वतःची अशी गो (Go Programming Language ) हि बनवलीय!
अँपल चे Swift आणि cocoa हे तर iOS शिवाय android आणि windows mobile अशा तिहलोकांवर राज्य करू पाहताहेत!!!
फेसबुक ने PHP च्या सोबतीला Hack नावाची बोलीभाषा आणलीय! Twitter ने रुबीच्या रुळावरून (Ruby on Rails) उतरत आता स्काला (Scala) ला जवळ केलंय! ज्या व्हाट्स अँप (WhatsApp) ने जगाला वेड लावलंय ते एर्लंग (Erlang programming language) भाषेत बनवलंय, जिच्याकडे १९८६ पासून कुणाचे फारसे लक्षच गेले नव्हते !
तिकडे पडद्यामागे (back end programming), Oracle, MySql, DB2 आप-आपले वंश पुढे नेत आहेत... लोकसंख्या वाढीमुळे Cassandra, MongoDB, HBase ही SQL नसलेली (NoSQL), बंडखोर मंडळी देखील भाव खावून जातायेत! आणि असे बरेच काही !!!
आता इतकी गर्दी झालीय तर ह्या गर्दीचा सामना करायला हडूप (Hadoop) चा हत्ती, क्लाउड कम्प्युटिंग (Cloud Computing) चे ढग आशी विशालकाय मंडळी आय. टी. क्षेत्रात अवतरली आहेत!
आता सांगा ह्या सगळ्या कीचाटात, बिचारा 'फुल स्टॅक' काय काय करणार?
जे सद्ध्या इंजिनिअरिंग करत आहेत, किंवा करणार असतील त्यांना ह्या वादळाची काय कल्पना? ते बिचारे अजूनही सिलॅबस मधे दिलेला 'हॅलो वर्ल्ड' (Hello World!) चा प्रोग्राम लीहितायेत! वर 'आमचे ९५% इंजिनिअर जॉब मिळवण्याच्या लायक नाहीत' असे म्हणून त्यांना प्रोत्साहन देण्यात येत आहे!
हो आहेत ते नालायक पण त्यांना इथपर्यंत तर पोहचूदेत जिथून खाली पाहिल्यावर त्यांना उमजेल की आपण नालायक आहोत!... मग स्वतःला आणि त्यांच्या मुलांना लायक बनवायची काळजी ते स्वतःच घेतील...
उरलेले कदाचित फेसबुक आणि व्हॉट्स अॅप वर निव्वळ पोस्ट टाकण्यात बिझी असतील!
अरुण भऊड