আমি কি কাউকে বলতে পারি যে তাদের প্রতিশ্রুতিবদ্ধতার ফলে একটি প্রতিরোধের সৃষ্টি হয়েছে?


115

আপনি যখন ট্র্যাক ডাউন করেন এবং কোনও রিগ্রেশন ঠিক করেন — যেমন একটি বাগ যার ফলে পূর্ববর্তী কোডিং কাজ করা বন্ধ করে দেয় — সংস্করণ নিয়ন্ত্রণটি কে এটি ভেঙে দিয়েছিল এমন পরিবর্তনটি প্রতিশ্রুতিবদ্ধ তা সন্ধান করা সম্পূর্ণভাবে সম্ভব করে তোলে।

এটি কি মূল্যবান? প্রতিশ্রুতিবদ্ধ ব্যক্তির প্রতি এটি উল্লেখ করা কি গঠনমূলক? ভুলের প্রকৃতিটি (তারা পরিবর্তিত কোডের মৌলিক ভুল বোঝাবুঝিতে সাধারণ অজ্ঞতাবোধের স্কেলে) এটি একটি ভাল ধারণা কিনা তা পরিবর্তন করে?

যদি তাদের বলাই ভাল ধারণা হয়, কোনও অপরাধ না করে বা তাদের প্রতিরক্ষামূলক হওয়ার কারণ না করে এগুলি করার ভাল উপায় কী?

ধরুন, যুক্তি দেখানোর জন্য, বাগটি যথেষ্ট সূক্ষ্ম যে সিআই সার্ভারের স্বয়ংক্রিয় পরীক্ষাগুলি এটি তুলতে পারে না।


119
আপনি যখন তাকে এই ইমেলটি প্রেরণ করেন তখন পুরো দলটিকে সিসি করবেন না।
কোয়ান্ট_দেব

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

26
@ জালেন - একটি রসিকতা দিয়ে নয় - যা কেবল মানুষকে বিরক্ত করে
ব্যবহারকারী 151019

29
"ধরে নিন, যুক্তি দেখানোর জন্য যে বাগটি সিআই সার্ভারের স্বয়ংক্রিয় পরীক্ষাগুলি এটিকে গ্রহণ করতে পারে না তা যথেষ্ট সূক্ষ্ম।" কেন না? এটি কি এমন কিছু যা আপনি পরীক্ষা করেন না? যদি এটি হয় তবে প্রথমে আপনার যা করা উচিত তা হল একটি পরীক্ষা (বা কয়েকটি পরীক্ষা) লিখুন যা এখন ব্যর্থ হয় তবে বাগটি স্থির হয়ে গেলে পাস হবে। যদি এটি পরীক্ষা করা না যায় তবে কেন হবে না?
থমাস ওভেনস

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

উত্তর:


38

যদি আপনি কেবল তাদের কাছে করা কোনও ভুল সম্পর্কে তাদের বলার জন্য যান তবে যদি আপনি বিশ্বের সেরা কূটনীতিক না হন তবে "হা! - আপনি যে এই ভুলটি করেছেন তার দিকে নজর দিন!"! আমরা সবাই মানুষ এবং সমালোচনা নেওয়া কঠিন difficult

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

আমি : আমি এই বাগটিতে কাজ করছি যেখানে ... বাগের সংক্ষিপ্তসার ... এবং আমি মনে করি আপনার সমস্যার পরিবর্তনের জন্য আমি সমস্যার সমাধান করেছি। আপনি কি মনে করতে পারেন এই পরিবর্তনটি কী জন্য হয়েছিল? / আপনি কি এই পরিবর্তনটি ব্যাখ্যা করার জন্য কিছু সময় পেয়েছেন?

তারপরে হয়:

তাদের: অবশ্যই, পরিচালনা করার জন্য ... পরিস্থিতি সম্পর্কে আমি অবগত ছিলাম না ...

বা এর লাইন বরাবর কিছু:

তাদের: না, দুঃখিত আমি মনে করি না, আমার কাছে ভুল দেখাচ্ছে।

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

যদি আসল প্রতিশ্রুতিবদ্ধ না থাকে বা ব্যস্ত থাকে তবে আপনি কেবল কটূক্তি করতে পারেন এবং এটি নিজেরাই নির্ধারণ করতে পারেন, আমি সাধারণত দেখতে পাই যে যিনি মূলত পরিবর্তনটি করেছেন তার সাথে কথা বলা দ্রুত হয়।

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


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

1
@ টিম্পেটার ফেয়ার পর্যাপ্ত - প্রতিস্থাপন "সাথে" সম্পর্কে "এখনও অবগত ছিল না" বা আপনি যা পছন্দ করেন তার চেয়ে বেশি কিছু - আমার বক্তব্যটি হ'ল যদিও আপনি এটি নিজের জন্য নির্ধারণ করতে পারেন (যেমন ডকুমেন্টেশন দেখে), এর সাধারণত দ্রুত জিজ্ঞাসা করা। এছাড়াও প্রচুর কোড যেমনটি হওয়া উচিত ঠিক তেমন নথিভুক্ত হয় না।
জাস্টিন

170

আগ্রাসী না হয়ে দৃ as় থাকুন। "আপনার কোডটি কাজ করছে না" "এই কোডের টুকরোটি" বনাম "কাজ করছে না" এর মতো কিছু বলার পক্ষে সর্বদা সমর্থন করুন। কোডটি সমালোচনা করুন, কোডটি লিখেছেন এমন ব্যক্তি নয়।

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

অবশ্যই, আপনার অন্য বিকাশকারীরা একই সমস্যা নিয়ে আপনার কাছে আসার কথা শুনতে ইচ্ছুক হওয়া উচিত এবং আপনি কীভাবে তাদের ইচ্ছা করতেন তা আচরণ করা উচিত।


107
+1 টি। ব্যক্তিগত পছন্দের পদ্ধতির: "আমি এটির সাথে জগাখিচু হওয়ার আগে, আপনি এইভাবে এটি করার কোনও কারণ ছিল?"
পিডিআর

67
+1 টি। "কোডটি লিখেছেন এমন ব্যক্তি নয়, কোডটির সমালোচনা করুন।"
সি_মেকার

11
+1 টি, এটা কি আমার বিয়ে পরামর্শদাতা আমার স্ত্রী ও আমাকে বলা, যখন কি আপনার সঙ্গী করছে বিরুদ্ধে অভিযোগ থাকার, শব্দ এড়াতে অনুরূপ উপদেশ আপনি , এটা খুব মুখোমুখী হয়।
ম্যাপেল_শ্যাফট

3
+1, তবে আমি "আপনি" শব্দটি সংঘাতমূলক বলে মনে করি না। মালিকানা সম্পর্কে একটি সুস্পষ্ট বোঝাপড়া হওয়া দরকার। আমার ব্যক্তিগতভাবে লোকেরা ক্রমাগত কোড তৈরি করেছিল যা বিল্ডটি ভেঙে দিয়েছে কারণ তারা বুঝতে পারেনি যে এটিরাই তাদের কারণ। আমি @ পিডিআর এর পদ্ধতিকে পছন্দ করি ... এই বিবৃতিটি দ্বন্দ্বমূলক নয় তবুও এতে "আপনি" শব্দটি রয়েছে।
টিম রেড্ডি

3
আপনার মতো মনে হচ্ছে একটি নতুন বাগ আবার প্রবর্তন করতে পারে। তাদের সমাধানের ফলে পূর্ববর্তী সমস্যাটিকে সংশোধন করা হতে পারে যা আপনি জানেন না। কেন তাদের কাছে যান না এবং কেন তারা কোডটি লিখেছিল সেভাবে কেন জিজ্ঞাসা করুন। এটি প্রকাশ করতে পারে যে এটির মধ্যে একটি বিজোড় ভাষা / নকশা / ভিএম কিউর্ক রয়েছে। তাদের গিয়ে আপনার অহং দেখানো ["আমি কীভাবে আরও ভাল করতে পারি" তাদের সাহায্য করবে না]
monksy

70

হ্যাঁ, সবসময় । প্রোগ্রামার হিসাবে ভুল থেকে শিক্ষা নেওয়া আপনার কাজ।

তাদের করা ভুলগুলি জানানো তাদেরকে আরও ভাল কোডার হয়ে উঠতে এবং ভবিষ্যতে ভুল করার সম্ভাবনা হ্রাস করতে সহায়তা করবে। কিন্তু ভদ্র হতে এবং এটি একটি বড় চুক্তি না, আমরা সব বাগ মাঝে মাঝে তৈরি করুন। আমি দেখতে পেলাম একটি ভদ্র ইমেল হ'ল লোকদের জানাতে একটি খুব অ-বিবাদী উপায়।


3
"ভুল থেকে শিক্ষা" অংশটি সর্বজনীনভাবে সত্য নয়। বাগের বিশাল পরিমাণ হ'ল উদাহরণস্বরূপ নিখোঁজ বৈধকারকের মতো জিনিস। এগুলি কেবলমাত্র অভিজ্ঞ বিকাশকারীদের ক্ষেত্রেই ঘটে। আপনি এটি থেকে বেশি কিছু শিখবেন না। এজন্য আমাদের একটি শালীন কিউএ হওয়া দরকার।
ফ্যালকন

2
@ ফ্যালকন "আমাদের একটি শালীন কিউএ হওয়া দরকার" অন্তর্দৃষ্টিটি ভুল থেকে শিক্ষা গ্রহণের একটি উদাহরণ। "কেন আমাদের QA হয় না / কেন আমাদের QA এই সমস্যাটি মিস করে না" এই চিন্তা করে আপনি চালিয়ে যেতে পারেন
মার্কজে

2
@ ফ্যালকন "এগুলি কেবলমাত্র ঘটে" <--- এই একমাত্র জ্ঞান যা আপনি বারবার কিন্তু তুচ্ছ ভুল থেকে প্রাপ্ত হন। আপনি যখন সংকলন করেছিলেন এবং জিনিসগুলি কাজ করে না তখন আপনার অভিজ্ঞতা আছে, প্রথম জিনিসটি আপনি আপনার বানানটি পরীক্ষা করেন এবং 10 সেকেন্ডের মধ্যে ব্যাংটি চলে যায়। আপনার জ্ঞান আছে যে "এগুলি কেবলমাত্র ঘটে" এটি কখনও কখনও 10 ঘন্টা নয় 10 সেকেন্ডে ডিবাগ করতে সক্ষম হয়।
গ্যাপ্তন

@ গ্যাপ্তন এবং মার্কজে: সেগুলি ভাল পয়েন্ট! আমি সে সম্পর্কে ভেবে দেখিনি।
ফ্যালকন

"প্রোগ্রামার হিসাবে ভুল থেকে শেখার এটি আপনার কাজ।" -> "একজন মানুষ হিসাবে ..." আপনার ভুল থেকে শিক্ষা নেওয়া এই ক্ষেত্রে নির্দিষ্ট কিছু নয় specific
বুরহান আলী

23

গঠনমূলক উপায় হ'ল বাগটি খুঁজে পাওয়া, এটি ঠিক করা এবং ভবিষ্যতে অনুরূপ বাগগুলি এড়াতে পদক্ষেপ নেওয়া।

যদি এটিতে কীভাবে বাগগুলি প্রবর্তন করা যায় না তা ব্যাখ্যা করার সাথে জড়িত, এটির জন্য যান।

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


4
"ভবিষ্যতে অনুরূপ বাগগুলি এড়াতে পদক্ষেপ গ্রহণ করুন" এর জন্য +1। এটিই সবচেয়ে গুরুত্বপূর্ণ অংশ, আইএমও।
একটি সিভিএন

1
The constructive way is to find the bug, fix it and take actions to avoid similar bugs to arise in the future.-> প্রশ্নের ভিত্তিটি হ'ল আপনি ইতিমধ্যে বাগটি ঠিক করেছেন।
হুগো

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

@ জ্যাকব - আমি সম্মত
mouviciel

19

সাধারণভাবে, হ্যাঁ

আপনি যদি কৌশলগত হন তবে কারওরও প্রতিরক্ষামূলক হওয়া উচিত নয়। এটি হ্যান্ডেল করার একটি সহজ উপায় হ'ল ট্রাঙ্কে ফেরত দেওয়ার আগে তাদের পরিবর্তনটি (বা আপনার সংস্করণ নিয়ন্ত্রণ সিস্টেমের জন্য প্রাসঙ্গিক যাই হোক না কেন) ডাবল-চেক করতে বলুন। আপনি সুস্পষ্ট ত্রুটিগুলি ঠিক করে কয়েক মিনিট তাদের বাঁচিয়ে রাখলে লোকেরা এটির প্রশংসা করবে, তবে আপনি যদি এমন কিছু ঠিক করেন যা ভাঙা হয়নি এবং তাদের কোড ভঙ্গ করে শেষ করে তবে তারা তাদের প্রশংসা করবে না। তাদের আপনার পরিবর্তনের পর্যালোচনা করার সুযোগ দেওয়া তাদের বলছে যে আপনি তাদের পায়ের আঙ্গুলের উপর পা রাখতে চান না এবং তাদের আপনার পরিবর্তনের প্রতি আপত্তি জানানোর সুযোগ দেয়।

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

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

সর্বদা মনে রাখবেন যে আপনি "বাগ" কে চেক করেছেন তা যদি জানতে পারেন তবে তারা সহজেই তাদের কোডটি "সংশোধন" করতে পারে। আপনি যদি ভাবেন যে সত্যের পরে আপনার পরিবর্তন সম্পর্কে সন্ধান করে তারা বিচলিত / বিরক্ত / বিব্রত বোধ করবেন, তবে আগেই তাদের বলুন।

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


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

3
"এটি একটি ত্রুটির মতো দেখতে দেখতে +1 এর জন্য, তবে আমি আপনার কোডটি নিয়ে গণ্ডগোল করার আগে আপনার দ্বারা চালিত করতে চেয়েছিলাম।"
রাসেল বোরোগোভ

6

যদি আমি একটি প্রতিশ্রুতিবদ্ধ করি যাতে একটি বাগ অন্তর্ভুক্ত থাকে তবে আপনি আমাকে আরও ভাল করে বলবেন। আমি যদি আপনার কোনও প্রতিশ্রুতি খুঁজে পাই যাতে একটি বাগ অন্তর্ভুক্ত থাকে তবে আমি অবশ্যই আপনাকে তা জানিয়ে দেব।

আমরা কেবল তখনই উন্নতি করি যখন আমরা আমাদের ত্রুটিগুলি বুঝতে পারি। ভবিষ্যতে আমরা আরও উন্নত কোড উত্পাদন করব।


5

আপনি এখানে দুর্দান্ত উত্তর পেয়ে যাচ্ছেন।

আমি যখন কোনও ভুল করতে পারি তখন আমি কেবল কোনও পরিচালকের কাছ থেকে শিখেছি এমন কৌশল যুক্ত করতে পারি।

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

তিনি প্রায় ক্ষমতার স্বরে আমাকে উল্লেখ করেছিলেন যে এখানে কোনও সমস্যা আছে বলে মনে হচ্ছে এবং আমার এটি দেখার জন্য কি সময় পাবে?

প্রায়শই যথেষ্ট, ত্রুটিটি আমার ছিল এবং সে এটি জানত। এটাই দক্ষতা।


5

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

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

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


4

আপনার প্রশ্নের ভাল ট্রেশন! সবাই আপনাকে জানিয়েছে কি করবেন। বলো তো? হ্যাঁ! যে কোনও সময় প্রশ্নটি জিজ্ঞাসা করে "আমার আরও যোগাযোগ করা উচিত?", উত্তরটি সর্বদা হ্যাঁ হ্যাঁ!

তবে আলাদা কিছু যুক্ত করার জন্য: আপনার ধারণাটি ত্রুটিযুক্ত।

একজন সহকর্মী একটি প্রতিশ্রুতিবদ্ধ করেছিলেন যা সিআই ভাঙ্গেনি, তবে আপনাকে একটি সমস্যা আবিষ্কার করতে পরিচালিত করবে।

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

যাইহোক, আপনার সহকর্মী যাতে আবার না ঘটে তা নিশ্চিত করার জন্য পরীক্ষার সাথে স্থির করে নিন happen আপনি দুজনই নায়ক! তবে যদি আপনি কথায় বা কর্মে কোনও দোষ সরিয়ে দিতে দেন তবে আপনি সবচেয়ে খারাপ সাংগঠনিক রোগের জন্য: দায়বদ্ধতা ব্যতিরেকে দায়বদ্ধ ability

আপনার যদি সত্যই কোনও ভিলিয়ান খুঁজে পেতে হয় তবে সেই লোকটির কথা চিন্তা করুন যিনি মূল কোডটি ভেঙেছেন এবং আপনার সন্দেহাতীত বন্ধুকে ফাঁদে ফেলেছেন (স্পষ্টতই পর্যাপ্ত পরীক্ষার কাভারেজ ছাড়াই)। আশা করি যে আপনি ছিল না!


2

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

আপনি যখন কেবল দুজনেই থাকবেন তখন তাদের বলুন।


শেষ বাক্যটির জন্য +1। জনসমক্ষে প্রশংসা, একান্তে সমালোচনা করুন।
স্কট সি উইলসন

2

আপনি যখন তাকে বলেছিলেন যে তিনি ভুল করেছেন, কেউ যদি ক্ষুব্ধ হন, তার অর্থ তিনি মনে করেন তিনি পৃথিবীর সবচেয়ে বুদ্ধিমান এবং কোনও ভুল করেন না, এবং সমালোচনা করা হলে তিনি অনুভূতি পান, যেমন আমরা পোল্যান্ডে বলেছিলাম, 'মুকুট পড়েছে তার মাথা'.

সুতরাং আপনার বলতে দ্বিধা করা উচিত নয় যে কেউ ভুল করেছে। এটা স্বাভাবিক। সবাই ভুল করে, এমনকি সেরা! কেবল যারা কিছু করেন না তারা কোনও ভুল করেন না;)


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

হ্যাঁ, তবে প্রশ্ন "ডুড, আপনি কি কমিট করার আগে জুনিট পরীক্ষা চালিয়েছেন?" এটি, আমি মনে করি, সম্পূর্ণ গ্রহণযোগ্য :)
ডানুবিয়ান নাবিক

+1 যারা কেবল কিছুই করেন না তাদের জন্য ভুল করুন । স্পষ্টভাবে যখন এটি উচ্চারণ করা হয়, তবে আমি এটি এত সুন্দর করে আগে দেখিনি।
FumbleFingers

2

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


2

আমি কেন এখানে একটিও উত্তর দেখতে পাচ্ছি না যা প্রশ্নের উপরে শীর্ষে মতামত প্রতিফলিত করে ??

হ্যাঁ, একেবারে তাদের বলুন, তবে এটি পুরো টিমের সামনে করবেন না

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

আপনি সাধারণত প্রশংসা শুরু করার পরে এটি সর্বোত্তম কাজ করে দেখেন এবং তারপরে ত্রুটিতে পৌঁছে যান ... "আপনি যে ফিক্সটি প্রয়োগ করেছেন তা দুর্দান্ত কাজ করে, তবে মনে হচ্ছে এটি এক্স, ওয়াই, জেড", বা "একটি করার জন্য ধন্যবাদ , বি, সি, তবে এটি মনে হচ্ছে যে এক্স, ওয়াই, জেড "


2

সহজ উত্তর: হ্যাঁ

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

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

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


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

2

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


1

খেলতে অনেক কারণ রয়েছে।

  • বাগটি কতটা তীব্র?
  • আপনার এবং ব্রেকারের মধ্যে জ্যেষ্ঠতার সম্পর্ক কী?
  • দল কতটা ব্যস্ত / স্ট্রেসড আউট?
  • ব্রেকারটি কোডবেসের তাদের অংশে কাজ করছিল নাকি আপনার?
  • আপনি কতটা নিশ্চিত যে এটি সত্যই একটি বাগ ছিল এবং আপনি কতটা নিশ্চিত যে আপনার ফিক্সটি সঠিক?

যদি সমস্যাটি সামান্য ছিল - একটি টাইপো / থিঙ্কো / কাট এবং পেস্ট বাগ - এবং ব্রেকার একটি ব্যস্ত পিয়ার এবং আপনি নিজের সমস্যার মূল্যায়নের বিষয়ে আত্মবিশ্বাসী হন, সম্ভবত আপনার এটিকে তাদের নজরে আনার দরকার নেই। (যেমন foo.x = bar.x; foo.y = bar.y, foo.z = bar.y)

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

ত্রুটির প্রকৃতি যদি কোনও গুরুতর ভুল বোঝাবুঝির ইঙ্গিত দেয় (বাস্তবায়ন প্ল্যাটফর্মের, স্থানীয় নীতিগুলি, বা প্রকল্পের বৈশিষ্ট্য), তবে এটিকে ASAP এনে দেবে।

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


1

তাদের না বললে কি হয়?

কনস

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

দ্বিতীয়ত, তারা মনে করে যে তারা তাদের চেয়ে আরও ভাল কাজ করছে। লোকেরা যখন তাদের সমস্যার বিষয়ে সচেতন না হয় তখন তারা যখন না হয় তখন তারা ভাল করছে বলে ভেবে খুব কমই তাদের দোষ দেওয়া যায়। সমস্যাটি যখন গাফিলতির ভুল হয় তখনও ভুলগুলি লক্ষ্য করা যায় এমন বিষয়ে সচেতন হলে লোকেরা সেগুলির কম করে।

এর পরে যদি কেউ এটি না করে তবে সে কীভাবে করবে তা আপনি কীভাবে জানবেন যে আপনার যদি কোনও নির্দিষ্ট সমস্যাযুক্ত কর্মচারী থাকে যা সর্বদা অসতর্ক থাকে বা পণ্যের মূল ভুল বোঝাবুঝি থাকে? কোনও দায়িত্বশীল ব্যক্তি কি চান যে তিনি বা তার সাথে যুক্ত একটি দলে চালিয়ে যেতে পারেন?

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

অনুকূল

লোকেরা তাদের ভুলগুলি নির্দেশ করার জন্য আপনাকে বিব্রত বা বিরক্ত করে না।

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

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