भाग १
---
गोष्ट आहे २०१८ ची. US शिफ्ट होऊन १ आठवडा झाला होता. संध्याकाळची वेळ होती आणि पाऊस पडत होता. अचानक माझ्या आणि माझ्या बायकोच्या मोबाईल मधून एक कर्कश आवाज यायला सुरवात झाली. तो आवाज कॉल किंवा मेसेज चा नव्हता. असा आवाज याआधी कधी ऐकला नव्हता. 👇
तो आवाज कसा होता ते तुम्ही खालील संकेत स्थळी ऐकू शकता.
थोडी माहिती गोळा केल्यावर समजले कि तो आवाज Emergency Alert System मुळे होता.पाऊस पडत असल्याने पाणी साचून अपघात होऊ शकतात म्हणून फ्लॅश फ्लड वॉर्निंग चा अलर्ट होता.👇
ह्या अलर्ट चा वापर वेगवेगळ्या कामांसाठी करतात जसे कि पाऊस, चक्रीवादळ, मुलांना पळवून नेलेल्या गाड्यांचे तपशील इत्यादी. आणि विशेष म्हणजे ह्यासाठी तुमच्या फोन ची लोकेशन वापरली जात नाही. सरकारी यंत्रणा मोबाईल कंपन्यांना प्रभावित क्षेत्र देतात ज्यात हा अलर्ट पाठवायचा आहे. 👇
नंतर मोबाईल कंपन्या प्रभावित क्षेत्रातील प्रत्येक टॉवर ला जे पण जोडलेले ग्राहक आहेत त्या प्रत्येकाच्या मोबाईल वर हा अलर्ट पाठवतात. म्हणजे हा अलर्ट तुमच्या मोबाईल च्या टॉवर वरून येतो असं थोडक्यात म्हणू शकतॊ. 👇
भाग २
---
काही दिवसांपूर्वी YouTube वर This is my Architecture हि Amazon Web Services व्हिडिओ सिरीज बघत होतो.ह्या मध्ये विविध कंपन्या त्यांनी AWS कसे वापरले त्या बद्दल माहिती देतात. त्यातल्या एका व्हिडिओ मध्ये टॅको-बेल चा इंजिनिअर त्यांच्या ऑर्डर सिस्टिम बद्दल माहिती देत होता👇
टॅको-बेल हे एक मेक्सिकन जेवण बनवणारे एक उपहार गृह आहे.त्यांचे खूप रेस्टॉरंट्स US मध्ये आणि आता भारतात पण आहेत.जेव्हा झोमॅटो/स्वीगी सारखे US मधील aggregator वरून ग्राहक ऑर्डर देतो तेव्हा त्यांनी अशी सिस्टिम बनवली आहे कि जो पर्यंत डिलिव्हरी बॉय त्या उपहार गृह च्या जवळ पोचत नाही👇
तोपर्यंत ती ऑर्डर उपहार गृहाजवळ दिल्या जात नाही. जेव्हा तो डिलिव्हरी बॉय उपहार गृहा च्या एका कक्षे मध्ये (geofence) येतो तेव्हा ती ऑर्डर रेस्टॉरंट ला दिली जाते आणि मग ते रेस्टॉरंट ऑर्डर बनवायला घेतात.👇
ह्यामुळे २ गोष्टी घडतात. एक म्हणजे ग्राहकाला गरम जेवण मिळत आणि दुसरी गोष्ट म्हणजे डिलिव्हरी बॉय ला जास्ती वाट नाही बघावी लागत. खालील संकेत स्थळी तुम्ही तो व्हिडिओ पाहू शकता. 👇
भाग ३
---
आता हे वरील २ भाग एकदम वेगवेगळे वाटले तरी ह्यांच्या तंत्रज्ञाचा उपयोग आपल्या कडे करता येऊ शकतो का? विशेष करून Human Wildlife Conflict ला आळा घालण्यासाठी.म्हणजे जंगला लगतचे दाट लोकसंख्या असलेले जे पण क्षेत्र आहेत त्यातील हिंस्र जनावरांना gps ट्रॅकिंग करून 👇
जर ते जनावर मनुष्य वस्तीच्या कक्षे मध्ये आले (geofence) तर मोबाईल टॉवर वरून त्या क्षेत्रांतील ग्राहकांना emergency अलर्ट देता येऊ शकतो जेणेकरून लोकं सावध होतील आणि आपली लहान मुलं पाळीव प्राणी ह्यांना सुरक्षित ठेवू शकतील. 👇
खालील ट्विट वर उत्तर मिळाले नाही म्हणून माझे विचार इथे टाकण्याचा प्रयत्न केला आहे. तुम्हाला जर ह्या बद्दल काही माहिती असेल तर नक्की सांगा.
#BrainDump
१० ऑगस्ट २००६ - माझ्या साठी खूप महत्वाचा दिवस कारण ह्याच दिवशी मी माझ्या IT करिअर ला मुंबई मध्ये सुरुवात केली होतो.ह्या १६ वर्षात मी जे काही करू शकलो ते माझ्या पहिल्या कंपनी मध्ये तयार झालेल्या base मुळेच.तर ह्या १६ वर्षातील माझे अनुभव मी इथे मांडण्याचा प्रयत्न करतोय👇
१. IT (technical) दुनिया खूप मोठी आहे.टेक्निकल जॉब्स मध्ये DotNet/JAVA/Python/javascript व्यतिरिक्त पण खूप काही आहे.टूल्स/प्रॉडक्ट्स मध्ये प्रचंड प्रमाणात काम असतं.काही इंडस्ट्री मध्ये विशिष्ट प्रॉडक्ट्स वापरले जातात त्या प्रॉडक्ट्स चे कस्टमायझेशन मध्ये पण खूप काम असतं👇
२. पहिली नोकरी जर MNC मध्ये असेल जॉईन करताना तुम्हाला माहिती नसतं कि तुमचे नेमके कामाचे काय स्वरूप असेल अश्या वेळी जर मनासारखा प्रोफाइल मिळाला तर ठीक नाही तर बघावं कि आपण कशावर काम करतो, त्याचे मार्केट कॅप किती आहे, ह्यावर कुठल्या कंपन्या मध्ये स्पर्धा आहे.👇
#IT#ITJobs#Freshers
आधीच्या 🧵 मध्ये आपण Interfaces आणि Abstract Class बद्दल माहिती घेतली.
आज आपण Java 8 मधील बदलांच्या अनुषंगाने ह्याच प्रश्नाचे स्वरूप कसे बदलू शकतं ते बघूया. Java 8 मध्ये आपण Interfaces मध्ये पण methods चे default implementation देऊ शकतो. 👇
ह्याचाच अर्थ कि आधी interfaces आणि abstract class मध्ये जो एक मूळ फरक होता तोच जसा काही नाहीसा झाला. Java 8 च्या अगोदर Interface मधील method चे फक्त signature देऊ शकत होतो पण आता signature आणि वास्तविक code पण Interfaces मध्ये लिहू शकतो. 👇
तर Java 8 नंतर interfaces आणि abstract class एकसारखेच झालेत का? हा एक trick question म्हणू शकतो. पण ह्याचं उत्तर आहे नाही Java 8 नंतर हि interfaces आणि abstract class एकसारखेच नाहीत.
सगळ्यात पाहिले हे समजायला हवं कि ह्या default methods का आल्या. 👇
फ्रेशर म्हणून एका डेव्हलपर ला मुलाखती दरम्यान विचारला जाणारा प्रश्न म्हणजे Interface आणि Abstract Class म्हणजे काय? आणि कोणत्या वेळी काय वापरावे? दैनंदिन जीवनातील काही उदाहरण देण्याचा प्रयत्न करतो म्हणजे सगळ्यांना समजता येईल. 👇
🔎Interface - सोप्या भाषेत सांगायचं झालं तर Interface म्हणजे एक साचा. जसा एका मूर्तिकाराकडे मूर्ती बनवायचा एक साचा असतो अगदी तसा. आता समजा कि तुम्ही अमुक एक मूर्ती बनवण्याचा साचा विकताय. 👇
जेव्हा तुम्ही तो साचा विकला, तुम्हाला नाही माहिती कि ह्या साच्यातून मातीची मूर्ती बनणार कि कुठल्या धातूची कि प्लास्टर ऑफ पॅरिस ची. तिचा रंग काय असणार, तिचे डोळे कसे असणार ह्या गोष्टी (implementation) तुमच्या मूर्तिकारावर सोडल्या आहेत. 👇
आमचे प्रॉडक्ट डेटा सेंटर वरून AWS वर जात आहे (टेस्ट सर्व्हर्स).प्रॉडक्ट मध्ये ई-मेल नोटिफिकेशन पाठवण्याचा एक भाग आहे.म्हणूनच AWS वर ई-मेल सर्व्हर सेटअप केले आहे.पण ई-मेल काही जात नव्हते आणि error येत होता Mail server connection failed.👇
Connection failed असा error होता म्हणून AWS चे Security Groups बघितले पण सगळं व्यस्थित होतं. आणि विशेष म्हणजे जसे हे सर्व्हर्स आहेत तसेच दुसरे AWS servers बनवले पण तिथे कधीच असा error नाही आला. 👇
थोडं गूगल केलं तर एका ब्लॉग मध्ये लिनक्स वर असलेली होस्ट फाईल मध्ये एक बदल करायला सांगितला. 127.0.0.1 localhost अशी पाहिली loopback ऍड्रेस ची एन्ट्री होस्ट फाईल मध्ये होती त्या ऐवजी 127.0.0.1 <<host_name>> अशी पहिली एन्ट्री आणि 127.0.0.1 localhost हि दुसरी entry केली.👇
बऱ्याच डेव्हलपर्स ला Linux शिकायचे असते. Java/python ह्या languages जितक्या Linux वर प्रभावशाली आहेत तितक्या Windows वर नाहीत. म्हणून Linux चे ज्ञान असणे आवश्यक ठरते. पण कशी शिकणार/इंस्टॉलेशन हा मोठा प्रश्न पडतो. 👇
Laptop ला Dual boot मध्ये २ OS टाकू शकता पण मला ती एक किचकट पद्धत वाटते. तुम्ही तुमच्या Windows लॅपटॉप च्या command prompt ला cygwin द्वारे Linux terminal सारखे वापरू शकता पण फक्त terminal म्हणजे OS नव्हे. तिथे फक्त तुम्हाला मूलभूत commands वापरता येतील.👇
पण जर आपल्याला स्वतःच्या लॅपटॉप वर मूळ OS न काढता/Dual Boot न करता अगदी सोप्या पद्धतीने Linux टाकता आले तर? ह्या साठीच आपण आज Oracle Virtual Box ह्या मोफत टूल बद्दल थोडी माहिती देण्याचा प्रयत्न करतोय. 👇
IT कंपनी जॉब साठी CS/IT फ्रेशर्सना विचारला जाणारा एक प्रश्न म्हणजे "What is Encapsulation?" या प्रश्नाला सहसा Data Hiding असं उत्तर मिळतं. पण Encapsulation चा "प्रॅक्टिकल" उपयोग काय तर समाधानकारक उत्तर मिळत नाही.👇
ह्या प्रश्नाचे उत्तर मिळवण्यासाठी एक गोष्टं सांगतो.
२००६ सालची गोष्टं आहे. Java Developer म्हणून माझा पहिला जॉब आणि पहिला प्रोजेक्ट. 👇
माझ्या टीम लीड ने मला एक Class लिहायला सांगितला. ज्या मध्ये काही attributes आणि methods (behavior) होते. टीम लीड ने सांगितले कि attributes ला private आणि methods public ठेवायच्या. "कन्सेप्ट" क्लिअर नसल्यामुळे मी त्याला विचारले कि आपण नेहेमी attributes private का ठेवतो? 👇