পাইথনের গুগলের ভারী ব্যবহার, এটি কি স্বাদের বিষয় বা এটি তাদের একটি প্রতিযোগিতামূলক সুবিধা দেয়?
পাইথনের গুগলের ভারী ব্যবহার, এটি কি স্বাদের বিষয় বা এটি তাদের একটি প্রতিযোগিতামূলক সুবিধা দেয়?
উত্তর:
আমি আসলেই একটি সুস্পষ্ট উত্তর দিতে পারি না, কারণ ২০০৪ সালে গুগলে আমি সাক্ষাত্কার দেওয়ার সময় পর্যন্ত পাইথন গুগলে ইতিমধ্যে বিশিষ্ট ছিল।
প্রকৃতপক্ষে, একটি স্পষ্টতই আকর্ষণীয় ব্যাখ্যা রয়েছে যা আমি অবশ্যই অস্বীকার করতে পারি: এটি এমন নয় যে গুগল পাইথন ব্যবহার করে কারণ এটি এতগুলি বিশিষ্ট পাইথনিস্টকে নিয়োগ করে - বরং, বেশিরভাগ "বিশিষ্ট পাইথনিস্টা" গুগল গুগলে যোগ দিয়েছিলেন, অন্তত কিছুটা অংশ, কারণ আমরা পাইথনের খ্যাতি সম্পর্কে জানতাম knew সেখানে (সম্ভাব্য ব্যতিক্রমগুলির মধ্যে পিটার নরভিগ এবং জেরেমি হিল্টন অন্তর্ভুক্ত রয়েছে, তবে historতিহাসিকভাবে গুগলের পাইথনের পছন্দ তাদের আগেও পূর্বাভাস দিয়েছে)।
এ কারণেই আমি প্রথম আগ্রহী হয়েছি (আমার প্রকাশক আমার যে বইটি গুগল কিনেছিল তার প্রচুর পরিমাণে অনুলিপি সম্পর্কে আমাকে জানতে দেয় - প্রথমদিকে, আমি এটিকে আমার ফ্রিল্যান্স পরামর্শ পরামর্শ বিক্রয় করার একটি ভাল সুযোগ হিসাবে ভেবেছিলাম ...; - ), পরে আমি কীভাবে গাইডোকে আমাদের সাথে যোগ দিতে রাজি করিয়েছিলাম, এবং আমি বিশ্বাস করি, গ্রেগ স্টেইন, ওয়েসলি চুন, ফ্রেড্রিক লুন্ড, টমাস ওয়াউটারস, কলিন উইন্টারস, জেফরি ইয়াসকিন, ...
এগুলি সবই শুরু হয়ে গেছে, আমি বিশ্বাস করি, কারণ খুব প্রাচীনতম গুগলার্স (সের্গেই, ল্যারি, ক্রেইগ, ...) একটি ভাল ইঞ্জিনিয়ারিংয়ের সিদ্ধান্ত নিয়েছে: "পাইথন যেখানে আমরা পারি, সি ++ যেখানে আমাদের অবশ্যই করতে হবে" - তারা ব্যবহার করেছিল (একটি উপসেট) সি ++ সফ্টওয়্যার স্ট্যাকের সেই অংশগুলির জন্য যেখানে খুব কম লেটেন্সি এবং / বা মেমরির আঁটসাঁট নিয়ন্ত্রণ অত্যন্ত গুরুত্বপূর্ণ ছিল এবং পাইথন, অন্যান্য অংশগুলির জন্য প্রোগ্রামগুলি আরও দ্রুত সরবরাহ এবং রক্ষণাবেক্ষণের অনুমতি দেয়। 90'র দশকের শেষের দিকে, পরবর্তী চরিত্রটির জন্য মূল পছন্দটি পাইথন এবং পার্লের মধ্যে ছিল: অন্যান্য স্ক্রিপ্টিং ভাষাগুলি অপরিশোধিত ছিল (আমি মনে করি না রুবি এখনও কাছাকাছি ছিল, উদাহরণস্বরূপ) বা অন্যান্য সমস্যা এবং সীমাবদ্ধতা ছিল। পার্ল আরও পরিপক্ক ছিল (বিশেষত সিপিএএন এর মাধ্যমে উপলব্ধ অ্যাড-অনগুলির ইকোসিস্টেমের ক্ষেত্রে) তবে পাইথনকে আরও বেশি পঠনযোগ্য এবং রক্ষণাবেক্ষণযোগ্য বলে মনে করা হত এবং সি ++ লাইব্রেরিতে (এসডাব্লুআইজি এর মাধ্যমে) ইন্টারফেস করা সহজ ছিল।
জাভা পরে এসেছিল, একটি মধ্যবর্তী কুলুঙ্গিটি কভার করে - এবং খুব সম্প্রতি অবশ্যই গো বিকাশ হয়েছে (যদিও আমি বিশ্বাস করি না যে এটিতে এখনও অনেক উত্পাদন কাজ রয়েছে, কারণ এটি এখনও বিকশিত এবং পরিপক্ক)। কিছু বিশেষীকৃত ভাষা যেমন স্যাজল খুব নির্দিষ্ট কাজের জন্যও মিশ্রণে থাকে এবং অবশ্যই জাভাস্ক্রিপ্ট ব্রাউজার-পাশের কাজের জন্য খুব গুরুত্বপূর্ণ।
গ্রেগ '06-এ উল্লিখিত ভাষাগুলি সহ অন্যান্য ভাষাগুলি হয় "দুর্ঘটনাজনিত" বা অন্য নির্দিষ্ট কাজের জন্য ব্যবহৃত হয় (যেমন, আইফোন বা ম্যাকের ক্লায়েন্টদের জন্য উদ্দেশ্য সি) - যেমন গুগল যখন প্রথম সিস্টেম প্রশাসকদের নিয়োগ দিয়েছিল , এই কর্মচারীরা অনিবার্যভাবে পার্ল এবং বাশের খুব দৃ mas় দক্ষতা নিয়ে এসেছিল এবং প্রায়শই কিছু জটিল অভ্যন্তরীণ ব্যবস্থা বিকাশের জন্য এই ভাষাগুলির কোনওটিই ব্যবহার করত; পাইথনগুলিতে পুনরায় পুনঃনির্মাণ করা (সহজ স্থাপনা এবং রক্ষণাবেক্ষণের জন্য) প্রায়শই ঘটেছিল। অন্যদের (যেমন সি #) অধিগ্রহণের কারণে সাময়িকভাবে মিশ্রণে থাকতে পারে, তবে, আবার "প্রধান গুগল ভাষাগুলির" একটিতে পুনর্নির্মাণ করা সবসময়ই বেশ উচ্চ অগ্রাধিকার হিসাবে থাকে (সি # এর ক্ষেত্রে, পুনঃনির্মাণ সাধারণত জাভাতে হবে, যেহেতু দুটি ভাষা বিমূর্ততার স্তরের ক্ষেত্রে একই ক্ষেত্রকে সম্বোধন করে)।
আমি পুরো নিবন্ধটি পড়িনি এবং আমি জানি না এটি কতটা প্রতিনিধি তবে সম্ভবত এটি আপনার প্রশ্নের উত্তর দেয়: গুগলে পাইথন ।
ঠিক আছে আমি পড়তে তার অধিকাংশই, দুর্ভাগ্যবশত তা না দেয় যে অনেক অন্তর্দৃষ্টি কিন্তু আমার মনে হয় এটা এখনও একটি আকর্ষণীয় নিবন্ধ। সম্ভবত সবচেয়ে গুরুত্বপূর্ণ:
গুগলে পাইথন সি ++ এবং জাভার পাশাপাশি 3 টি "অফিশিয়াল ভাষা" এর মধ্যে একটি। অফিসিয়াল এখানে অর্থ হ'ল গুগলারের এই ভাষাগুলি উত্পাদন পরিষেবাগুলিতে স্থাপন করার অনুমতি দেওয়া হয়। (অভ্যন্তরীণভাবে গুগল লোকেরা পিএইচপি, সি #, রুবি এবং পার্ল সহ অনেকগুলি প্রযুক্তি ব্যবহার করে)। পাইথন গুগলে ইঞ্জিনিয়ারিং প্রসেসের জন্য বেশ উপযুক্ত। গুগলে সাধারণ প্রকল্পটির একটি ছোট দল রয়েছে (3 জন) এবং একটি স্বল্প সময়কাল (3 মাস)।
ভুলে যাবেন না যে পাইথনের স্রষ্টা গাইডো ভ্যান রসুম ২০০৫-২০১২ থেকে গুগলের জন্য কাজ করেছিলেন;)
আমি এই উদ্ধৃতিটিও পেয়েছি তবে আমি এটি যাচাই করতে পারি না:
"পাইথন শুরু থেকেই গুগলের একটি গুরুত্বপূর্ণ অঙ্গ, এবং সিস্টেমটি বেড়ে ওঠার সাথে সাথে তাই রয়ে গেছে remains আজ কয়েক ডজন গুগল ইঞ্জিনিয়ার পাইথন ব্যবহার করে, এবং আমরা এই ভাষায় দক্ষতার সাথে আরও বেশি লোকের সন্ধান করছি"
- পিটার নরভিগ, গুগলে অনুসন্ধান মানের পরিচালক
আমি আনলাডেন-গেলা সম্পর্কে পড়ছিলাম , সিপিথনের কর্মক্ষমতা উন্নত করার উদ্দেশ্যে একটি প্রকল্প s তাদের আলোচনা বোর্ডের মাধ্যমে ব্রাউজ করার সময় আমি এই আলোচনায় হোঁচট খেয়েছি, যেখানে কোলিন শীতকালীন (গুগলের কর্মচারী এবং পাইথন কোর বিকাশকারী) এই দাবিতে উত্তর দিয়েছে যে গুগল কর্মীরা নতুন প্রকল্পের জন্য পাইথন ব্যবহার থেকে নিরুৎসাহিত করা হচ্ছে :
ঠিক আছে, সাধারণ জ্ঞান গুগলের স্কেল পরিচালিত করার সময় পাইথনের প্রয়োগযোগ্যতা সীমাবদ্ধ করতে চলেছে: এটি জাভা বা সি ++ এর মত তত দ্রুত নয়, থ্রেডিং স্তন্যপান হয়, মেমরির ব্যবহার বেশি হয় ইত্যাদি any কোনও নতুন সিস্টেম ডিজাইন করার সময় আমাদের যে নকশার প্রতিবন্ধকতার মুখোমুখি তা হ'ল, "ভার যখন 10x বা 100x বাড়িয়ে দেয় তখন কী ঘটে? পুরো গ্রহটি যদি আপনার নতুন পরিষেবাটিকে দুর্দান্ত মনে করে তবে কি হবে?" যে কোনও প্রযুক্তি যা এই সীমাবদ্ধতাটিকে তৃপ্ত করে তোলে - এবং আমি মনে করি পাইথন এই বিভাগে পড়ে - উচিতঅন্যান্য যোগ্যতার পক্ষে এটির পক্ষে খুব শক্ত মামলা না হলে নিরুৎসাহিত হন। পাইথনের শক্তিগুলি দুর্বলতার সাথে আপনার ভারসাম্য বজায় রাখতে হবে: পাইথন ব্যবহার করে আপনার প্রকৌশলীরা আরও উত্পাদনশীল হতে পারেন, তবে ভলিউম বাড়ার সাথে যদি তাদের আরও প্ল্যাটফর্ম-স্তরের পারফরম্যান্স / স্কেলিং সীমাবদ্ধতার আশপাশে কাজ করতে হয়, আপনি কি এগিয়ে আসবেন? প্রভৃতি
আপনি যদি পল গ্রাহাম এর সাবস্ক্রাইব করেন ধারণাকে যে সংক্ষিপ্ততা == শক্তি (উদাহরণস্বরূপ, আপনি যদি ভাষা ওয়াইয়ের 100 টি লাইন নিয়েছিলেন তা সম্পাদনের জন্য আমি যদি 10 টি লাইন ভাষায় কোড লিখতে পারি তবে আমার ভাষা আরও শক্তিশালী)
আজকাল হার্ডওয়্যার সস্তা, মাংসের জিনিস ব্যয়বহুল । আমি জানি যে আমি অন্যান্য ভাষার চেয়ে পাইথনে আরও অনেক বেশি, দ্রুত, আরও ভাল এবং পরিষ্কার লিখতে পারি, কেবল কারণ ব্যাটারি অন্তর্ভুক্ত থাকে। অবশ্যই, এটি ধীর হতে পারে তবে আপনি কি .05 সেকেন্ড এবং .0005 সেকেন্ডের মধ্যে পার্থক্যটি লক্ষ্য করতে পারবেন?
আরও প্রকৃত বিশ্বের উদাহরণে, যদি গুগল বিকাশকারীরা পাইথনে এমন কোনও প্রোগ্রাম লিখেন যেখানে তাদের কখনই আবর্জনা সংগ্রহের বিষয়ে চিন্তা করতে হবে না এবং সংস্থা এক্স সি ++ তে একটি প্রোগ্রাম লিখে এবং তারা তাদের 10% সময় মেমরি বরাদ্দ সম্পর্কিত সম্পর্কিত বাগগুলি অনুসন্ধান করতে ব্যয় করে, কারা দ্রুত কাজ করেছে তা অনুমান করুন - এমনকি যদি সি ++ শপ তাদের বাকী কোডটি ঠিক তত দ্রুত লিখে রাখে।
তাই হ্যাঁ, আমি বলব এটি পাইথনের কোডে প্রতিযোগিতামূলক সুবিধা।