প্রধানমন্ত্রী একটি অতি-জটিল সেটআপের পক্ষে নির্বাচন করছেন যা [বদ্ধ] সাথে কারও অভিজ্ঞতা নেই


51

সম্প্রতি আমি এমন একটি প্রকল্প শুরু করেছি যা তৈরি করা খুব কঠিন বলে মনে হচ্ছে না, ধারণাটি মোটামুটি সহজ অ্যাপ্লিকেশন ছিল যা এখন এবং পরে (সম্ভবত 10x দিনে) ইনপুট গ্রহণ করতে হয়েছিল এবং তাদের উপর কিছু ক্রিয়াকলাপ চালিয়ে সমস্ত ফলাফল সংগ্রহ করার চেষ্টা করেছিল শেষে. এই অ্যাপ্লিকেশনটি তখন একটি ফ্রন্ট-এন্ড ওয়েব পোর্টাল পাবে যা গ্রাহকরা ফলাফলটি দেখতে রকেট বিজ্ঞান নয়, ব্যবহার করতে পারবেন।

এর জন্য আমি প্রথমে পাইথনের অন্তর্নির্মিত সমঝোতা গ্রন্থাগারগুলির স্মার্ট ব্যবহার করেছি ( ThreadPoolExecutorএবং) সামনের প্রান্তের জন্য সহজেই ব্যবহারযোগ্য লাইব্রেরি ব্যবহার করি (আমি ফ্লাস্ককে বেছে নিয়েছিলাম এটি প্রাথমিকভাবে সহজ এবং এটি বজায় রাখা এবং পরীক্ষা করা তুলনামূলক সহজ)।


প্রকল্পটি অর্ধেক হয়ে যাওয়ার পরে প্রধানমন্ত্রী বলেছিলেন যে থ্রেডের পরিবর্তে আমাদের তৃতীয় পক্ষের বার্তা সারি দক্ষতা ব্যবহার করতে হবে এবং লোড ব্যালেন্সিং বাস্তবায়ন করতে হবে, শেষ অবধি যা ঘটেছিল তা হ'ল আমরা শেষ পর্যন্ত সিলারি, রেডিস, রেবিটএমকিউ, এনগিনেক্স, ইউডাব্লুএসজিআইয়ের সাথে কাজ শুরু করেছি। এবং অন্যান্য বৃহত্তর তৃতীয় পক্ষের পরিষেবাগুলির একটি গুচ্ছ যার সাথে কারও সাথে প্রকৃত অভিজ্ঞতা নেই।

শেষ পর্যন্ত এই স্প্যাগেটি কোডের একগুচ্ছ পদক্ষেপ, অকেটযোগ্য কর্ম (তৃতীয় পক্ষের গ্রন্থাগারগুলির জটিলতার কারণে, কোডটি প্যাচিং এমনকি কাজ করে না) এবং মাথাব্যথার একগুচ্ছ কারণ এই পরিষেবাগুলির অতিরিক্ত মূল্য কী তাও কেউ জানত না nobody ।


আপনি "হ্যাঁ সেই পরিষেবাগুলি ব্যবহার করা উচিত" বলার আগে, মনে রাখবেন যে কেউ কীভাবে এগুলি ব্যবহার করবেন তা জানেন না এমনকি জাতি-শর্ত জর্জরিত কোডটি প্রবর্তন করার পাশাপাশি তারা কী করেন তাও জানেন না।

আমি এই সম্পর্কে কি করা উচিত? এই মুহুর্তে আমাদের যা ছিল তা ফিরিয়ে দেওয়া খুব ব্যয়বহুল হবে এবং প্রধানমন্ত্রী এই পরিষেবাগুলি ব্যবহারে মরিয়া হয়ে আছেন, যদিও শেষ-পণ্যটি শুরুতে আগের চেয়ে খারাপ ছিল। তাঁর সাথে এটি নিয়ে আলোচনা করার কি কোনও ব্যবহার আছে? আমি কি আরও সময় চাই? বা কঠোর উত্তর, আমি কি আমার কাজের জন্য খুব বোকা?


12
আপনার জন্য সম্মতিটি কী সমস্যার সমাধান করে? এই ব্যবস্থা কে ব্যবহার করবে? এটি কোন ব্যবসায়িক মূল্য অর্জন করে? উল্লেখযোগ্য স্কেলিবিলিটি সমস্যা আছে যেগুলি সমাধান করা প্রয়োজন? একজন বিকাশকারী হিসাবে আপনার প্রধানমন্ত্রীর উচিত কেন এই সরঞ্জামগুলি এবং লিবগুলি প্রয়োজন। তাহলে আপনি বুঝতে শুরু করতে পারেন যে এই সরঞ্জামগুলি যদি না হয় তবে কীভাবে সহায়তা করবে।
রিবল্ড এডি

7
আপনি একটি অনুন্নত প্রধানমন্ত্রীর সাথে কাজ করছেন। আপনি হয় থাকতে পারেন বা যেতে পারেন। সম্ভবত একই প্রধানমন্ত্রীর অধীনে অন্যান্য প্রকল্পগুলির সাথে একই ধরণের নির্জনতা ঘটবে।
ফ্রাঙ্ক হিলিমান

80
একজন প্রধানমন্ত্রী কেন প্রযুক্তিগত সিদ্ধান্ত নিচ্ছেন ?! আমি যদি কখনও একটি গন্ধ পাই তবে এটি বাস্তব প্রকল্পের গন্ধ।
রাবারডাক

13
এটি কোনও শিশুকে একটি চেইনসো কিনে এবং বাইরে গিয়ে গাছ কেটে ফেলার জন্য চাপ দেওয়ার মতো যাতে এটি অর্থের অপচয় হয় না।
JeffO

28
এই প্রকল্পের মতো শোনার জন্য একটি শক্তিশালী প্রযুক্তিগত সীসা দরকার যা কোনও সমাধান ব্যবস্থাপক হওয়ার ভান করে কোনও প্রকল্প পরিচালকের কাছে হাস্যকরভাবে হাসতে ভয় পায় না isn't আপনার সত্যিকার অর্থে চুক্তিতে মাথা ঝাঁকানো উচিত, এবং তারপরে যেকোন উপায়ে সমাধান করা উচিত। হ্যাঁ। এই আমার সাথে উড়ে না।
গ্রেগ বার্গার্ট

উত্তর:


89

প্রকল্পটি অর্ধেক হয়ে যাওয়ার পরে প্রধানমন্ত্রী বলেছিলেন যে আমাদের থ্রেডের পরিবর্তে তৃতীয় পক্ষের বার্তা সারি ক্ষমতা ব্যবহার করতে হবে এবং লোড ব্যালেন্সিং বাস্তবায়ন করতে হবে

এটি প্রধানমন্ত্রীর পক্ষে একতরফাভাবে "রাষ্ট্র" দেওয়ার পক্ষে উপযুক্ত জিনিস নয়। দুটি কারণ:

  1. নকশার সিদ্ধান্তগুলি কোনও প্রযুক্তিগত সংস্থান দ্বারা করা উচিত এবং কেবল এনএফআরগুলির প্রতিক্রিয়াতে । তাই বিনীতভাবে আপনার প্রধানমন্ত্রীকে জিজ্ঞাসা করুন যে কোনও নতুন এনএফআর আছে কিনা এবং যদি আপনি দয়া করে বিশদ জানতে পারেন।

  2. যদি কোনও এনএফআর প্রকল্পের অর্ধেক পথ চালু করা হয়, তবে এটি সম্ভবত একটি পরিবর্তন নিয়ন্ত্রণের মাধ্যমে করা উচিত । প্রশাসনের দৃষ্টিকোণ থেকে পরিবর্তন নিয়ন্ত্রণ করা অত্যন্ত গুরুত্বপূর্ণ; এটি কেবল আপনার প্রয়োজনীয়তার জন্য একটি ইনপুট হবে না, তবে এটি কিউএর পরীক্ষার মামলাগুলি, অপারেশনগুলির স্থাপনা এবং সহায়তা হ্যান্ডবুক এবং প্রধানমন্ত্রীর সময়সূচির (এখানে সত্যই গুরুত্বপূর্ণ অংশ) একটি গুরুত্বপূর্ণ ইনপুট । যদি নতুন প্রয়োজনীয়তা আরও কাজের সূচনা করে, তবে উন্নয়ন দলের কাছে নতুন বিকাশের অনুমানের কথা বলার সুযোগ থাকা উচিত এবং প্রধানমন্ত্রী সিদ্ধান্ত নিতে হবে যে তারা নতুন তারিখের সাথে বেঁচে থাকতে পারে, আরও সংস্থান যুক্ত করতে পারে, বা যে স্টেকহোল্ডার প্রবর্তন করেছিল তাদের পিছনে চাপ দিতে হবে এনএফআর।

এখন যদি সত্যিই খুব খারাপ এনএফআর হয় এবং এর আশেপাশে কিছু না পাওয়া যায় তবে নতুন বা বিভিন্ন সংস্থাগুলির জন্য অনুরোধ করাও উপযুক্ত হতে পারে যারা চালু হচ্ছে যে প্রযুক্তিগুলির সাথে পরিচিত, বা আপনার বিদ্যমান কিছুগুলির জন্য একটি প্রশিক্ষণের বাজেটের জন্য অনুরোধ করতে পারেন সম্পদ। সুতরাং পাশাপাশি ব্যয়ের দিকও রয়েছে।

আপনি যদি প্রধানমন্ত্রীর ভাষা - সময়সূচী এবং ব্যয় - কথা বলেন তবে আমি মনে করি যে ফলাফলগুলি নকশাগুলি সম্পর্কে বিকাশকারীরা কীভাবে অনুভব করছেন সে সম্পর্কে কথা বলার চেয়ে আপনি আরও বেশি আকর্ষণ পাবেন। এই জিনিসগুলির আসল প্রভাব রয়েছে।

কোনও প্রধানমন্ত্রীর উচিত উড়ানে এই জাতীয় জিনিস চালানোর চেয়ে আরও ভালভাবে জানা উচিত, কোনও প্রশাসন, নিয়ন্ত্রণ এবং কোনও sensক্যমত্য ছাড়াই fly যদি তারা কেবল এটি না পান তবে আপনাকে পণ্য পরিচালনা বা প্রোগ্রাম পরিচালনায় আরও বাড়িয়ে নিতে হবে, কারণ তিনি (গুলি) মান এবং সময়সূচীটিকে অকারণে ঝুঁকির মধ্যে ফেলছেন।


21
ঠিক আছে, এই উত্তর। কোনও প্রকল্প পরিচালককে এই ধরণের সিদ্ধান্ত নেওয়া উচিত নয়। মানি? সময়? প্রকল্প পরিচালনা এটি পরিচালনা করে। RabbitMQ? কোন সুযোগ নেই.
গ্রেগ বার্গার্ট

আমি এই উত্তরটি অনেক পছন্দ করি। আপনার উপর কেবল নরকে ফেলে দেওয়া হবে না তা নিশ্চিত করার জন্য জায়গাটিতে নিয়ন্ত্রণ রয়েছে। তাঁর সাথে বসে কথা বলুন।
রাইস জনস

3
তবে, একটি জিনিস হ'ল কখনও কখনও এটি চুষার সময়, আপনাকে কেবল একটি নতুন প্রযুক্তি বা গ্রন্থাগার শিখতে হতে পারে। এটি কি সময় নেবে, হ্যাঁ, তবে এটি কেবল এটির পক্ষে উপযুক্ত হবে।
রাইস জনস

5
একটি প্রকল্প পরিচালক হিসাবে, আমি এই উত্তরটির সাথে আরও একমত হতে পারি না।
জেমস ম্যাকলিউড

13
ছোট সংস্থায় "প্রকল্প পরিচালক" প্রায়শই বস হয় ss তাদের মালিকের সিইও কান থাকতে পারে এবং কার্যকরভাবে প্রযুক্তিগত লিড বিকাশকারী বা আর্কিটেক্ট বা কিছু অধার্মিক সংমিশ্রণ হতে পারে। এই ক্ষেত্রে তাদের রেমিটনের সুযোগ পরিষ্কার নয়।
টানা স্লেজগাড়ির

31

মূর্খতা কী হবে নিজেকে মৃত্যুর পদযাত্রা পেতে দেওয়া ।

আপনি যা বর্ণনা করছেন তা হ'ল আপনি সমালোচনা অনুভূতি হারিয়েছেন। নিয়ন্ত্রণের কোনও ধারণা নেই এবং এর কাছে ফিরে আসার কোনও পরিষ্কার উপায় নেই।

আপনার শেষ কাজটি করা উচিত হ'ল কঠোর পরিশ্রম করা, আপনার মাথা নীচু করে রাখা এবং অবশেষে তারা স্বীকার না করে যে প্রকল্পটি ধ্বংস হয়ে গেছে quiet

আপনার যা করা উচিত তা হ'ল আপনার প্রত্যাশার প্রতিটি অধিকার কী তা নিয়ে খুব কঠোর চিন্তা করা।

যদি তারা আপনার কাছে এমন প্রযুক্তি ব্যবহার করতে চায় যা আপনি বুঝতে না পারেন তবে সেগুলি শেখার জন্য আপনার কাছে সময় আশা করা উচিত। আপনি যা জানেন না তাতে লজ্জা পাবেন না। নিজের অজ্ঞতাটিকে চুডেল হিসাবে ব্যবহার করুন। যখন তারা দাবি করে আপনি কিছু ব্যবহার করুন কেন তা জিজ্ঞাসা করুন। 'কারণ' গ্রহণ করবেন না। 'আধুনিক সেরা অনুশীলন' গ্রহণ করবেন না। বাস্তব, পরীক্ষামূলক, প্রত্যাশা না পেয়ে 'স্কেল-ক্ষমতা' গ্রহণ করবেন না।

পরীক্ষার দ্বারা আমি বোঝাতে চাইছি তারা প্রতিদিন / ঘন্টা / মিনিটে কতগুলি অনুরোধ করতে পারে তা তারা আপনাকে বলতে চাইবে। পরিষ্কার করুন যে আপনি এই চশমা অনুসারে এই সিস্টেমটি অনুশীলন করতে কিছু তৈরির পরিকল্পনা করছেন।

এইভাবে আপনি 30 দিনের নিখরচায় ট্রায়ালটি ব্যবহার করে প্রমাণ করতে পারেন যে তারা যে সর্বশেষ উইজ ব্যাং জিনিসটি চায় তা তার পক্ষে মূল্যবান বা যদি আপনি ইতিমধ্যে যা জানেন তার সাথে যদি আরও ভাল থাকে তবে।

এবার মাথায় রাখুন। এটি এমন কোনও সরঞ্জাম নয় যা জাতি-শর্ত জর্জরিত কোডটি প্রবর্তন করে। তোমরা ছেলেরা তা করেছ আপনার এটি কীভাবে করা উচিত তা শিখতে হবে যাতে আপনি এটি পূর্বাবস্থায় ফেরাতে পারেন।

এবং না. আপনার যা ছিল তা ফিরে ফেরা খুব ব্যয়বহুল নয়। প্রধানমন্ত্রীর কাছে শুধু দাবি করে তারা যা চায় তা পেতে পারে না। আপনি যতক্ষণ না প্রধানমন্ত্রী কার্যকরভাবে ব্যবহার করতে পারেন বা প্রজেক্টের প্রয়োজনের তা প্রমাণ করে না দেওয়া পর্যন্ত আপনাকে পিছনে যেতে হবে।

গম্ভীরভাবে, কেবল এটিকে দেওয়া প্রকল্পের জন্য পেশাগত এবং মারাত্মক।

আমি এখানে এসেছি। আরও একবার। এটি আপনাকে বোকা বোধ করে। আসলেই তা নয়। আপনি সবে হারিয়েছেন

প্রধানমন্ত্রীর সাথে কথা হয়। সত্যি বলতে. সব ছেড়ে দিন। আপনি শিখতে ইচ্ছুক দেখান তবে যাত্রায় নেওয়ার জন্য চান না। কখনও বিশ্বাসের উপর ভিত্তি করে ডিজাইন বা কোড কখনও তৈরি করবেন না। তারা কী চায় তা প্রধানমন্ত্রী আপনাকে দেখান। আপনি যখন করবেন না তখন বোঝার ভান করবেন না। যখন বলবে না যে এটি করা হবে তখনই হয়ে যাবে। আপনি যদি কিছু বিশ্বাস করতে যান তবে নিজেকে বিশ্বাস করুন। আপনাকে কোনও উত্তর দিতে রাজি থাকতে হবে।

যদি এটি কাজটি পুনরায় শুরুতে কাজ না করে কারণ আপনার খুব শীঘ্রই এটির প্রয়োজন হবে need একটি উপায় বা অন্য উপায়।


7
Now keep in mind. It isn't the tools that introduced race-condition plagued code. You guys did that. You need to learn HOW you did that so you can undo that.হ্যাঁ, এই অংশটি আমাকে বিশেষভাবে দেখায়। এটি সেলারি বা থ্রেডই হোক না কেন, যে কোনও ধরণের সম্মতিটি জাতি শর্তগুলি প্রবর্তন করতে পারে। থ্রেড-ভিত্তিক কোডে একই সমস্যাগুলি ভালভাবে থাকতে পারে।
ইজকাটা

10

এটি সত্যই workplace.stackexchange.com এ থাকা উচিত, কারণ সমস্যাটি আসলে কোনও সফ্টওয়্যার বিকাশের প্রশ্ন নয়, তবে কর্মক্ষেত্রের সম্পর্কের বিষয়ে।

আপনি যদি নিশ্চিত হন যে আপনার সহজ পদ্ধতির পরিবর্তে একটি কার্যকর ফলাফল কাজ করেছে এবং ফলাফল তৈরি করেছে, তবে আপনার প্রধানমন্ত্রী আপনার সংস্থার একটি ধ্বংসাত্মক শক্তি যা অপসারণ করা উচিত। কীভাবে সংবাদটি তার উপরের স্তরে পাবেন কীভাবে তা নির্ধারণ করুন: আপনার দলের একটি সহজ, কার্যনির্বাহী সমাধান ছিল যা ভাল অগ্রগতি করেছিল এবং যে কারণে আপনার প্রধানমন্ত্রী কোনও ব্যক্তিকে ব্যাখ্যা করতে পারেন না, আপনাকে একটি জনতা ব্যবহার করে আরও জটিল সমাধানের চেষ্টা করতে বাধ্য করেছিল এমন সরঞ্জামগুলির কথা যা কেউ জানে না, কেউ বুঝতে পারে না, কেউ জানে না যে সেগুলি আদৌ কার্যকর কিনা এবং আপনার প্রধানমন্ত্রীর সেই অবিচ্ছেদ্য সিদ্ধান্ত আপনাকে সমস্ত সমস্যার কারণ করেছিল এবং প্রকল্পটি দেরী করে এবং কাজ করছে না।


1

আপনার পরিচালনা দ্বারা অনুসরণ করা প্রসঙ্গ এবং পণ্য কৌশলটি অবগত নয়, আপনার প্রশ্নের উদ্দেশ্যমূলকভাবে উত্তর দেওয়া কঠিন।

এখানে কিছু উদ্দেশ্যমূলক যুক্তি। তবে এটি সম্ভব যে এটি আপনি যা প্রত্যাশা করেছিলেন তা নয়:

  • " মনে রাখবেন যে এই পণ্যগুলি কীভাবে ব্যবহার করতে হয় তা কেউ জানে না "।
  • নিখুঁতভাবে পরিচিত কেবলমাত্র সরঞ্জাম এবং কৌশলগুলি উচ্চ উত্পাদনশীলতা নিশ্চিত করবে। তবে এটি উদ্ভাবনের ক্ষমতা যথেষ্ট সীমাবদ্ধ করবে। কিছু বাজারে এটি আপনার পণ্যের পক্ষে মারাত্মক হতে পারে। উদাহরণস্বরূপ, প্রায় 30 বছর আগে, আমি এমএস-ডসের অধীনে সফল সিএডি পণ্যটির একটি নতুন সংস্করণ বিকাশের জন্য উইন্ডোজ 3.0 ব্যবহার করার প্রস্তাব দিয়েছিলাম। প্রোডাক্ট ম্যানেজার আপত্তি জানিয়েছিলেন যে এটি একটি প্রমাণিত পরিবেশ নয়, এটি দলের পক্ষে শেখা খুব জটিল এবং খুব কঠিন হবে এবং যাইহোক, " উইন্ডোজ কখনই মূলধারার পরিবেশ হবে না " ... আমি আপনাকে সাফল্যের অনুমান করতে দিই তার পণ্য 2 বছর পরে।
  • এটি সমস্ত ব্যয় এবং সুবিধার বিষয়। তৃতীয় পক্ষের দ্বারা নিশ্চিত করা যায় এমন স্কেল্যাবিলিটি এবং শৃঙ্খলাবদ্ধতার সুবিধা বনাম পরীক্ষার ব্যয় যা বিশাল ইনস্টলেশন এবং ভারী কাজের চাপ সহ অভিজ্ঞ।
  • একটি নতুন প্রযুক্তি যুক্ত করার ত্রুটিগুলি উপযুক্ত প্রশিক্ষণ সহ, বা অভিজ্ঞ পরামর্শদাতার প্রাথমিক সহায়তা / কোচিংয়ের সাহায্যে গতি বাড়ানো যেতে পারে।

শেষ পর্যন্ত, অর্থনৈতিক পছন্দটি আপনার পণ্য পরিচালকের দায়বদ্ধ। তিনি সু-বুদ্ধিমান সিদ্ধান্ত গ্রহণ করেন এবং যুক্ত হওয়া জটিলতাকে অবমূল্যায়ন করেন না তা নিশ্চিত করার জন্য তার সাথে উপকার ও বিবেচনা নিয়ে আলোচনা করুন। এবং যদি সে তার ট্র্যাকটিতে থাকে, আপনার সেরাটি অর্জন করার চেষ্টা করুন: আপনার কোনও কিছুই শিথিল করার নেই এবং সবচেয়ে খারাপ ক্ষেত্রে আপনার সিভিতে একটি নতুন প্রযুক্তি থাকবে।


1

তৃতীয় পক্ষের গ্রন্থাগারগুলিতে দুটি পদ্ধতি রয়েছে (এবং অন্যান্য উপাদানগুলি):

  1. তাদের যতটা সম্ভব ব্যবহার করুন
  2. তাদের মধ্যে যতটা সম্ভব ব্যবহার করুন

আমার পদ্ধতির (2)। আপনার মতামতটিও (2) বলে মনে হচ্ছে তবে প্রকল্প পরিচালক এটি (1) পছন্দ করেন।

আপনি এই পরিস্থিতিটি পরিচালনা করতে পারেন এমন তিনটি উপায়। হয় আপনি প্রধানমন্ত্রীকে প্রধানমন্ত্রীকে যা করতে দিন, আপনি প্রধানমন্ত্রীকে তৃতীয় পক্ষের লাইব্রেরিগুলিতে পরিবর্তন করার জন্য প্ররোচিত করার চেষ্টা করুন, বা আপনি নিজের পায়ে ভোট দিয়ে অন্য কোনও কাজ নির্বাচন করুন।

আপনি যদি দৃষ্টিভঙ্গি পরিবর্তন করতে প্রধানমন্ত্রীকে বোঝাতে চান তবে এই যুক্তিগুলি বিবেচনা করুন:

  • শেখার সময়। প্রতিটি বাহ্যিক গ্রন্থাগারটি শেখার জন্য সময় প্রয়োজন, যে সময়ে কোনও উপযুক্ত প্রোগ্রামার কাঙ্ক্ষিত কার্যকারিতা লিখতে পারে বিশেষত যদি একটি বিশাল লাইব্রেরি কেবলমাত্র একটি খুব সাধারণ কাজ করার জন্য বেছে নেওয়া হয়েছিল যা কয়েক শত লাইন কোডে করা যেতে পারে।
  • Replaceability।আপনার যদি বাহ্যিক গ্রন্থাগার থাকে তবে আপনি কীভাবে নিশ্চিত করবেন যে এর বিকাশ বন্ধ হয়ে গেলে আপনি এটিকে অন্য একটি অনুরূপ লাইব্রেরির সাথে প্রতিস্থাপন করতে পারেন? আমার সমাধানটি হ'ল আমি যখনই পারি বাইরের লাইব্রেরিগুলি এড়ানো এবং যখনই এটি সম্ভব হয় না তখন আমি প্রোগ্রামিং ইন্টারফেসের অংশটি বিমূর্ত করতে একটি সাধারণ মোড়ক লিখি। সাধারণত আমি যে ইন্টারফেসটি চাই তা লাইব্রেরির অফারগুলির চেয়ে অনেক সহজ। তারপরে আমার কোডটি কেবল এই মোড়কের মাধ্যমে বাহ্যিক গ্রন্থাগারটি অ্যাক্সেস করে, প্রতিস্থাপনগুলি সহজ করে তোলে। কিছু ফ্রেমওয়ার্কে আপনার পুরো অ্যাপ্লিকেশনটি তৈরি করা একটি বড় নম্বর is সার্ভলেট হল? হ্যাঁ, তারা এখানে দীর্ঘ সময়ের জন্য রয়েছেন এবং অদূর ভবিষ্যতের জন্য এখানে থাকবেন। টেম্পলেট ইঞ্জিনগুলি? হ্যাঁ, যদিও সেগুলি যথাযথভাবে প্রতিস্থাপনযোগ্য নয় (আপনি সাধারণত একটি বেছে নিন এবং তার সাথেই থাকুন), তারা যে মূল্য নিয়েছে তা বিশাল, সুতরাং সাবধানে নির্বাচন করুন - এবং মনে রাখবেন যে টেম্পলেট ইঞ্জিনগুলি স্যুইচ করার সময় আপনার একই অ্যাপ্লিকেশনটিতে দুটি টেম্পলেট ইঞ্জিন থাকতে পারে তবে সাধারণত একই অ্যাপ্লিকেশনটিতে আপনার দুটি ফ্রেমওয়ার্ক থাকতে পারে না। আপাচে স্ট্রट्स? না, ফ্রেমওয়ার্কগুলি ফ্যাশনে আসে এবং দ্রুত ফ্যাশনের বাইরে চলে যায় এবং সাধারণত একই অ্যাপ্লিকেশনটিতে আপনার দুটি ফ্রেমওয়ার্ক থাকতে পারে না।
  • সংস্করণ নরক। বাহ্যিক গ্রন্থাগার নির্বাচন করে, আপনাকে সুরক্ষা দুর্বলতাগুলি এড়াতে এটি আপডেট করতে হবে এবং এটি আপডেট করা জিনিসগুলি ভেঙে দিতে পারে। ভাল-নকশাযুক্ত উপাদানগুলি (যেমন জাভা জেআরই) বিভিন্ন সংস্করণের সাথে সামঞ্জস্যপূর্ণ তবে আমার অভিজ্ঞতা হ'ল বেশিরভাগ লাইব্রেরি বিশাল সংস্করণ জাহান্নামের চাপিয়ে দেওয়ার কারণে ক্রপ হয়। এছাড়াও, উপাদান X এর জন্য জেড সংস্করণ 1 প্রয়োজন হতে পারে এবং উপাদান Y এর জন্য জেড সংস্করণ 2 প্রয়োজন হতে পারে এবং আপনি একই অ্যাপ্লিকেশনটিতে জেড সংস্করণ 1 এবং জেড সংস্করণ 2 লিঙ্ক করতে সক্ষম হবেন না।
  • সুরক্ষা দুর্বলতা। একটি বাহ্যিক গ্রন্থাগার নির্বাচন করে, আপনার আবেদনের বিরুদ্ধে সহজেই কাজে লাগানো সুরক্ষামূলক দুর্বলতার সংখ্যা বৃদ্ধি পায়। কিছু দাবি করতে পারে যে ইন-হাউস ডেভেলপড কোডটি অস্পষ্টতার মাধ্যমে সুরক্ষার অনুরূপ, তবে আমি আবার বলব এটি এখনও সুরক্ষারই একটি রূপ।
  • লাইসেন্স ইস্যু। প্রতিটি বাহ্যিক গ্রন্থাগার আপনার প্রোগ্রামের অংশগুলিতে তার নিজস্ব লাইসেন্স চাপায়। উদাহরণস্বরূপ, জিপিএল লাইব্রেরিগুলি নন-জিপিএল প্রোগ্রামগুলিতে ব্যবহার করা যাবে না এবং এলজিপিএল লাইব্রেরিতে বাইনারিগুলির সাথে সোর্স কোড বিতরণও প্রয়োজন, যা ব্যান্ডউইথের যথেষ্ট পরিমাণে নিতে পারে।
  • অ্যাপ্লিকেশন শুরুর সময়। প্রতিটি বড় বাহ্যিক গ্রন্থাগার আপনার আবেদনের প্রারম্ভকালীন সময়কে ধীর করে দেয়। ঘরে বসে একটি সাধারণ, পাতলা লাইব্রেরি লিখে আপনি আপনার অ্যাপ্লিকেশনটির প্রারম্ভকালীন সময়টিকে আরও দ্রুত তৈরি করতে পারেন।
  • স্মৃতি পদচিহ্ন। এক্স থাকা ওয়াইয়ের সাথে জেডের সাথে প্রয়োজনীয় আবশ্যক জ এর প্রয়োজনীয় বি প্রয়োজন, আপনার একই সাথে মেমরিতে এক্স + ওয়াই + জেড + এ + বি প্রয়োজন। কেবলমাত্র X এর সমতুল্য প্রয়োগ করে, আসুন একে একে X, ইন-হাউস, স্মৃতিতে আপনার প্রয়োজন কেবল এক্স '। এবং সাধারণত এক্স এর মেমরি পদচিহ্ন এক্স এর মেমরি পদক্ষেপের চেয়ে কম থাকে
  • বাগ ঝুঁকি। বাহ্যিক উপাদানগুলিতে যত বেশি লাইন রয়েছে, তত বেশি ঝুঁকি হ'ল আপনি যে বাগের মধ্যে চলে যাবেন তা বোঝার জন্য আপনার প্রচুর পরিমাণে কোডের কারণে এটি সংশোধন করা শক্ত হবে। আপনি যদি ঘরে বসে কাজটি করেন, আপনি সাধারণত কোডের কম লাইনের সাথে এটি করেন (আপনার যা প্রয়োজন কেবল তা করতে, অন্য কিছুই নয়) এবং এর ফলে বাগের ঝুঁকি আরও কম থাকে।
  • Customizability। যদি আমি নিজে এসকিউএল কোয়েরি লিখি তবে আমি জানি যে ক্যোয়ারীটি কেমন দেখাচ্ছে এবং প্রদত্ত ডেটাবেস ইঞ্জিন এবং প্রদত্ত সূচকগুলির সেটগুলিতে এটি কতটা ভাল সম্পাদন করে। অন্যদিকে, এসকিউএল কোয়েরি যদি কোনও বাহ্যিক উপাদান দ্বারা রচিত হয় তবে আমি এর কার্যকারিতা সম্পর্কে কিছুই জানি না। আমি এমন একটি সংস্থায় কাজ করতাম যেখানে প্রতিটি ওয়েব পৃষ্ঠা আনতে কয়েক সেকেন্ড সময় নেয়। আমার সন্দেহ হয়েছিল কারণ হাইবারনেট গ্রন্থাগার তারা হ'ল ডাটাবেস থেকে স্বয়ংক্রিয়ভাবে প্রচুর পরিমাণে তথ্য এনেছে যখন আপনার প্রয়োজন সমস্ত একটি আইটেম ছিল এবং এই নির্দিষ্ট আইটেমের সাথে সম্পর্কিত সমস্ত আইটেম ছিল না। আমি মন্দার প্রকৃত কারণটি আবিষ্কার করার আগে সংস্থাটি ছেড়ে দিয়েছিলাম, কারণ প্রচুর বিদ্যমান লাইব্রেরি ব্যবহারের পদ্ধতিটি আমার পছন্দ হয়নি।

বিশেষত যদি একটি লাইব্রেরি নিজেকে একটি কাঠামো বলে । এর অর্থ লাইব্রেরির জন্য আপনার নিজের পুরো অ্যাপ্লিকেশনটি নিজের চারপাশে তৈরি করা দরকার। সাধারণত একই অ্যাপ্লিকেশনটিতে আপনার দুটি ফ্রেমওয়ার্ক থাকতে পারে না; তারা শান্তিপূর্ণভাবে সহাবস্থান না করে একে অপরের সাথে লড়াই করবে। ওয়েব ডেভলপমেন্ট ইউটিলিটি লাইব্রেরি? হ্যাঁ দয়া করে, এর মধ্যে খুব কমই রয়েছে। আমি এখন যা ব্যবহার করি তার থেকে যদি আমি কখনও ভাল লাইব্রেরি পাই তবে পুরানো কোডটিতে পুরানো লাইব্রেরিটি চালিয়ে যাওয়ার সময় আমি নতুন কোডটিতে সদ্য পাওয়া লাইব্রেরিটি ব্যবহার করতে পারি। ওয়েব বিকাশের কাঠামো? একটি বড় সম্মান নেই!


0

আমি মনে করি আপনার প্রধানমন্ত্রী এমন ব্যবস্থাপনার জন্য কঠোর লক্ষ্য রাখছেন যা এটি জীবিত থাকাকালীন প্রচুর রক্ষণাবেক্ষণের কাজ করবে, সুতরাং এটি আপনার আয় নিশ্চিত করবে।

ব্যক্তিগতভাবে, আপনি অজগর সাথে আটকে আছেন বলে মনে হয়, কিছুক্ষণের জন্য অজগরটিকে ভুলে যান, এক বছরের জন্য অজগরকে কোড করবেন না, নতুন জিনিস শিখুন, আপনি দেখতে পাবেন যে আরও কিছু ভাষা একই কাজ করতে পারে এবং সম্ভবত আরও ভাল।

অন্যরা যেমন বলেছে, সরঞ্জামগুলির সাথে কোডিং শুরু করার আগে সেগুলি শিখুন। সম্ভবত পরামর্শ দিন যে কার্যটি উপযুক্ত বলে মনে হচ্ছে এমন বিভিন্ন সরঞ্জামের গবেষণার ভিত্তিতে প্রয়োজনীয় স্ট্যাকের এক সাথে মূল্যায়ন করা ভাল। অথবা জিজ্ঞাসা করুন যে তিনি কীভাবে সেই তালিকাটি নিয়ে এসেছিলেন, তিনি আপ টু ডেটের কারও কাছ থেকে সহায়তা পেতে পারেন।


-2

নতুন গ্রন্থাগার, ফ্রেমওয়ার্ক, প্রযুক্তি ইত্যাদি ব্যবহার করতে শিখতে বিকাশকারীদের ভয় করা উচিত নয় এটি কোনও বিকাশকারীদের কাজের বিবরণের মূল অংশ, এবং কারও পক্ষে এটির পরামর্শ দেওয়া মোটেও যুক্তিযুক্ত যে টিমটি তৃতীয় পক্ষের জিনিসগুলির সাথে কাজ করে যা কারওর কাছে নেই has অভিজ্ঞতার সাথে বা এমনকি দাবি করার জন্যও যে তারা যদি দলের পক্ষে কর্তৃত্বমূলক প্রযুক্তিগত সিদ্ধান্ত নেওয়ার মতো অবস্থানে থাকে তবে দলটি এটি করবে।

তবে, আপনি কেবল একটি নতুন প্রযুক্তি টানতে পারবেন তা আশা করা যুক্তিসঙ্গত নয় ( একবারে কয়েকটি নতুন প্রযুক্তি ছেড়ে দেওয়া হোক)) আপনার স্ট্যাকের মধ্যে প্রবেশ করুন এবং অগ্রগতি চালিয়ে যান। নতুন পদ্ধতির ইনস ও আউটস শিখতে এবং নতুন টুকরো অন্তর্ভুক্ত করার জন্য একটি ভাল নকশা বের করার জন্য উল্লেখযোগ্য সময় নির্ধারণ করা উচিত ছিল, যার সময় আসল পণ্যটির উপর কোনও প্রকৃত অগ্রগতি আশা করা যায় না (এই শিক্ষণ / নকশাকর্মী লোকেরা থেকে) , যা পুরো দল হতে পারে বা নাও হতে পারে, যদিও এটি না থাকলে সম্ভবত সেই দলের জন্য যারা বাকি দলের কাছে জ্ঞান স্থানান্তর করতে শিখেছে তাদের জন্য আরও নির্ধারিত সময়ের প্রয়োজন হবে)। এই ধরণের বড় পরিবর্তন আনতে ব্যয়। নতুন প্রযুক্তি শেখা বিকাশকারীদের কাজের অংশ, তবে এটি শূন্য সময় ব্যয়ের সাথে ঘটে এমন কিছু নয়।

মনে হচ্ছে প্রশ্ন থেকে এমনটি ঘটেনি। তারা নিজেরাই বুঝতে পারে না এমন প্রযুক্তির শীর্ষে উন্নত রূপায়ণগুলি তৈরি করার চেষ্টা করার ক্ষেত্রে লোকেরা ডুবে আছে। অবশ্যই ফলাফল কোড ভয়ানক।

আপনার অপরাহ্ণ যে কোম্পানির সন্তুষ্ট করার চেষ্টা করুন করবে এই আরও বেশি সময় ব্যয় করতে হবে। এটি হয় এখন থামানো, নতুন প্রযুক্তি শেখা এবং মূল্যায়ন করা, একটি ভাল নকশা খুঁজে বের করার এবং বর্তমান বাস্তবায়ন জগাখিচির পরিচ্ছন্নতার আকারে আসবে। অথবা এটি বাগ, রক্ষণাবেক্ষণ, ব্যয়বহুল উন্নয়ন ইত্যাদিতে বেশি সময় নষ্টের আকারে আসবে

প্রশ্নের বর্ণিত প্রযুক্তিগত পছন্দগুলি (লোড ব্যালেন্সিং, বার্তা সারি ইত্যাদি) আসলে যথাযথ কিনা তা বলা অসম্ভব । আমি মনে করি না যে "দলের মধ্যে কেউই এর আগে এই নিয়ে কাজ করার অভিজ্ঞতা আছে" একেবারে সিদ্ধান্তকে অস্বীকার করার একটি ভাল কারণ, তবে এটি সেই সিদ্ধান্ত নেওয়ার স্বল্প-ব্যয় ব্যয়কে বাড়িয়ে তোলে (যা "পরিবর্তিত করতে পারে") সেরা "প্রসঙ্গের সিদ্ধান্ত), এবং যদি আপনার প্রধানমন্ত্রী তা বিবেচনা না করে থাকেন এবং অভিজ্ঞ দলের লোকেরা তত্ক্ষণাত উত্পাদনশীল হয়ে উঠবে বলে আশা করছেন তবে আপনাকে সেই কারণগুলি পিছনে ঠেকানো উচিত; তারা অত্যন্ত অবাস্তব প্রকল্পের শিডিয়ুল সেট করবে, যা কারওর পক্ষে আগ্রহী নয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.