অভ্যন্তরীণ কোডটি কোনও সংস্থার অ-বিকাশকারীদের সাথে ভাগ করা উচিত?


14

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

আমাদের কাছে প্রচুর স্মার্ট সাপোর্ট স্টাফ রয়েছে যা আমাদের গ্রাহকদের আরও ভালভাবে সমর্থন করার জন্য আমাদের সিস্টেমের অভ্যন্তরীণ কাজগুলি বুঝতে পছন্দ করে এবং এমনকি সময়ে সময়ে প্যাচ জমা দেয়।

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

এখনও পর্যন্ত কিছু যুক্তি:

  • ভিসিএসের পাসওয়ার্ড উন্মুক্ত করা হয়েছে (সমাধান: পাসওয়ার্ডগুলি থেকে মুক্তি দিন - সেগুলি শুরু করার জন্য সেখানে থাকা উচিত নয়)
  • হোয়াইট-বক্স সুরক্ষা আক্রমণগুলির জন্য কোড খোলা রয়েছে (পাল্টা যুক্তি: এটি কেবল সৎ / অলস আক্রমণকারীদের বাইরে রাখে)
  • সহায়তা কর্মীরা বিকাশকারীদের "কীভাবে" জিনিসগুলি কাজ করতে জিজ্ঞাসা করতে পারে (কাউন্টার: একজন মানুষকে মাছ ধরানো শেখায়))

কেউ কি তাদের সংস্থার কর্মীদের জন্য কোড খোলে? এটি কোন সমস্যা হয়েছে?


4
আপনি কেন এটি তাদের থেকে রাখতে চান?
মার্জন ভেনেমা

1
আপনি কি আইনটি সমর্থন করতে পারেন?
ব্লারফ্লায়

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

1
@ জানহুদেক: "পরিচালনার কাছে অবশ্যই প্রকাশ করতে হবে"; "কোন কর্মচারী এটি অ্যাক্সেস করতে পারে এবং নাও পারে তার নিয়ন্ত্রণ করার কোম্পানির অধিকার রয়েছে।" পারফেক্ট। এটা তোলে আপ না ডেভেলপারদের এই সিদ্ধান্ত নেওয়ার। সুতরাং স্পষ্টির জন্য আমার অনুরোধ। কিভাবে এই প্রশ্ন আসতে পারে? বিকাশকারীরা কেন এই সিদ্ধান্ত নিচ্ছেন?
এস .লট

1
@ এস.লোট: আমি প্রশ্নটি বোঝাচ্ছি না যে এটি বিকাশকারীরা যারা এই সিদ্ধান্ত নিয়েছেন। ম্যানেজমেন্টের শেষ কথা রয়েছে তবে তাদের জন্য কাউকে যুক্তি সংগ্রহ করতে হবে।
জানু হুডেক

উত্তর:


8

আমি এর কোন সাধারণ উত্তর আছে বলে মনে করি না। সংস্থাগুলি তাদের আকার, ভৌগলিক স্প্রেড, সংস্থার সংস্কৃতি, কপিরাইট নীতি, ধরণের সফ্টওয়্যার বিকাশ করা ইত্যাদি ইত্যাদি ক্ষেত্রে বন্যভাবে পৃথক হয় etc.

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

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

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

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

একটি চূড়ান্ত নোট: সমর্থনকারী লোকেরা স্মার্ট এবং প্যাচগুলি অবদান রাখতে আগ্রহী হলেও আমি বলব যে তাদের অবদানগুলি সর্বদা সিস্টেমে সংহত হওয়ার আগে কোনও বিকাশকারীকে পর্যালোচনা করা উচিত।


5

বেশিরভাগ সংস্থায় আমি কাজ করেছি, কোড ভান্ডারগুলি সকল বিকাশকারীদের জন্য উন্মুক্ত ছিল।

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

আমি যতটা সম্ভব খোলামেলা পুনরায় সংশোধন করব - সুতরাং লোকেরা যদি অ্যাক্সেস চায় তবে তাদের কাছে যদি কোনও সুস্পষ্ট সমস্যা না আসে তবে তা দিন। কিন্তু সত্যিই এটি সংস্থার সংস্কৃতির একটি প্রশ্ন ...


4

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

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

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

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


3

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

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

আমাদের সংস্থায়, এমনকি লোকেরা কোডে সত্যিকার অর্থে অবদান রাখে না - এমনকি কোডগুলিতে তাদের সরাসরি অ্যাক্সেস থাকে যা তারা ক্ষেত্রের (মালিকানা সহ) সমস্যাগুলি লড়াই করার / ঠিক করার চেষ্টা করে বরং বিকাশকারীদের কাছে জিনিস ফেলে দেয় এবং ঘুমাতে যায় না!


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

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

@ মার্ক, সেই অর্থে আমি একমত আমার এখন পর্যন্ত বেশিরভাগ কর্মক্ষেত্রে, আমি এসসিএম রেপোগুলির জন্য একটি অ্যাক্সেস পলিসি তৈরির জন্য খুব বেশি প্রচেষ্টা দেখিনি, তাই প্রায়শই তারা যে কারও কাছেই আসার সুযোগ পাবে। তবে এটি কারও সচেতন সিদ্ধান্তের নয়, অবহেলার ফল।
পিটার টারিক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.