আপনি কীভাবে বিবেচনা করবেন যে একজন প্রোগ্রামার তার বা যা করছে সে সম্পর্কে খারাপ?
সম্ভব হলে ... কীভাবে তার উন্নতি করা উচিত?
আপনি কীভাবে বিবেচনা করবেন যে একজন প্রোগ্রামার তার বা যা করছে সে সম্পর্কে খারাপ?
সম্ভব হলে ... কীভাবে তার উন্নতি করা উচিত?
উত্তর:
যখন তারা তাদের ভুল থেকে এবং পিয়ারের পর্যালোচনাগুলি থেকে শিখতে ব্যর্থ হয়।
আমরা সব সময়ে সবুজ হয়; তবে, আপনি যদি ভাল না হয়ে যাচ্ছেন বা আরও ভাল হওয়ার চেষ্টা করছেন তবে আপনি একজন খারাপ প্রোগ্রামার।
এমন একজন প্রোগ্রামার যিনি জানেন না যা তিনি জানেন না এবং এটি জানতে আগ্রহী নন।
একটি বড় সতর্কতা চিহ্ন হ'ল তারা যদি কোনও "কার্গো কাল্ট" প্রোগ্রামার হয় - যার অর্থ তারা কাজ করে তবে তারা কেন জানি না কেন তারা এই জিনিসগুলি করে (এটি কেবল "যাদু")। এরিক লিপার্টের দুর্দান্ত পোস্ট এখানে ।
নিবন্ধ থেকে:
প্রোগ্রামাররা যারা কোডটি কী তা বোঝে, তবে এটি কীভাবে তা করে না।
আমার কাছে একটি বড় পরামর্শ হ'ল যখন তারা আপনাকে বা অন্যান্য প্রোগ্রামারদের বিকাশের প্রশ্ন জিজ্ঞাসা করে যা স্পষ্টভাবে দেখায় যে তারা নিজেরাই এটি নির্ধারণের জন্য একেবারে শূন্য প্রচেষ্টা করেছে।
একটি তাত্পর্যপূর্ণ হয় যখন তারা একই প্রোগ্রামিং প্রশ্নটি একাধিকবার জিজ্ঞাসা করে যে তারা তথ্য অভ্যন্তরীণ করছে না।
FizzBuzz সমস্যা সমাধান করতে যখন তাদের দীর্ঘ সময় লাগে।
প্রোগ্রামাররা যারা নতুন প্রযুক্তি / ভাষাগুলি শিখতে অস্বীকার করে এবং তারা ইতিমধ্যে যা জানে তা আঁকড়ে রাখার জন্য জোর দেয়।
সংযোজন: (মন্তব্যগুলিতে ড্যাশ যা বলেছিল তা যুক্ত করে)
এর একটি সম্প্রসারণ হ'ল এমন লোকেরা যারা কিছু প্রযুক্তির কার্যকারিতার একটি উপসেট জানেন তবে এটি সম্পর্কে আরও কিছু জানার ইচ্ছা প্রকাশ করে না। প্রোগ্রামিং ভাষা, সম্পাদক, অন্যান্য সরঞ্জাম ...
যখন কোনও দলের সদস্য নেতিবাচক উত্পাদক বিকাশকারী হন ।
|# Lines Written| - |# Lines of bugs introduced| - |# Lines of rework required| < 0
মানে আপনার বাম দলের আরও খারাপ কাজ করতে হয়েছে খারাপ বিকাশকারীদের কারণে। NNPP
যখন তারা নিয়মিত ভিত্তিতে ডেইলি ডাব্লুটিএফ-এর অন্তর্ভুক্ত এমন জিনিসগুলি উত্পাদন করে ।
যখন তারা জানে যে জিনিসগুলি করার আরও ভাল উপায় রয়েছে তবে সময় অনুমতি দেওয়ার পরেও সেগুলি করতে অস্বীকার করে।
ব্যক্তিগতভাবে আমি মনে করি যে যে কোনও প্রোগ্রামার তাদের নিজস্ব কোডটি দেখতে পারেন যা তারা কিছুক্ষণ আগে লিখেছিলেন এবং এতে কোনও ভুল খুঁজে পাওয়া যায় না এটি ভাল নয়। "কিছুক্ষণ" অভিজ্ঞতা দিয়ে স্কেল করতে পারে ... আমি কয়েক বছর বা একত্রে কয়েক সপ্তাহের মধ্যে বলতে পারি।
যখন আমি একটি ছোট্ট দোকানে একটি দল নেতা ছিলাম, এমন অনেক লোক ছিল যাদের আমাকে পুনরায় নিয়োগ করতে হয়েছিল (আমার বা আমার প্রত্যক্ষ তত্ত্বাবধায়ককেই এক টন রেড টেপ এবং নথিপত্রের গাদা ছাড়াই সমাপ্তির ক্ষমতা ছিল had ) বা চুক্তির পুনর্নবীকরণ না করার জন্য বর্তমান ব্যস্ততার শেষে। অঙ্কিত কিছু ধরণের অন্যান্য দলের নেতাদের জন্যও কাজ করেছিল এবং তারা বেশিরভাগ ক্ষেত্রে একই মত পোষণ করেছিল। যেগুলি বিষয়গুলি আমার বইয়ের "খারাপ প্রোগ্রামার" বিভাগে নিয়েছে:
এগুলি আমার সাথে কাজ করতে হয়েছে এমন কয়েকটি খারাপ চরিত্র ...
/ এস / বেজান্টসফ্ট
জ্ঞান / দক্ষতার সুস্পষ্ট অভাব বাদে কোনও প্রোগ্রামার একটি খারাপ, যদি তাদের কোডটি পড়া এবং / বা হওয়া উচিত তার চেয়ে বেশি বজায় রাখা শক্ত হয়।
যখন অন্য কেউ তার কোডটি পড়তে পারে না। আপনি কত উজ্জ্বল তা বিবেচ্য নয়; কোন প্রোগ্রামার একটি দ্বীপ হয় না।
আমার জন্য প্রোগ্রামারদের জন্য দুটি বিভাগ রয়েছে - একক এবং দল।
খারাপ একক প্রোগ্রামাররা হয়
খারাপ দল প্রোগ্রামাররা হ'ল যারা খারাপ একক প্রোগ্রামার ক্যাটাগরিতে অন্তর্ভুক্ত
তারা উত্তরটি এবং / অথবা বিষয়গুলি সন্ধান করতে রাজি নয় তা স্বীকার করতে রাজি নয়।
যদি আপনি এটি জানেন না, হাল ছেড়ে দেবেন না - এটি বের করুন এবং এটি সম্পন্ন করুন।
আমার অভিজ্ঞতার একটি বড় সতর্কতা চিহ্ন হ'ল তারা যখন তাদের হ্যাকগুলিতে মন্তব্য না করে ....
আপনি কী বলতে চাইছেন তা আপনি জানেন: যখন আপনি খুব হ্যাকী কিছু করতে বাধ্য হন কারণ এটি করার কোনও সহজ উপায় আর নেই।
ভাল প্রোগ্রামাররা এটি করতে ঘৃণা করবে এবং ইনলাইন মন্তব্য করে যে তারা এই ধরণের হ্যাক লাগাতে কতটা ঘৃণা করবে, কিন্তু কোনও বিকল্প নেই। খারাপ প্রোগ্রামাররা কেবল হ্যাক লাগিয়ে দেবে এবং মন্তব্য করবে না।
আমি আমার উত্তরটি এখানে বন্ধ ডুপ্লিকেট বিষয় থেকে জিজ্ঞাসা করছি যা জিজ্ঞাসা করেছে আপনি খারাপ প্রোগ্রামার হলে আপনি কি চিনতে পারবেন? আমি আমার প্রতিক্রিয়া রচনা করার সময় অন্য বিষয়টি বন্ধ ছিল। আমার উত্তরটি আরও সরাসরি প্রশ্নটিকে সম্বোধন করে কারণ এটি অন্য প্রশ্নকারী দ্বারা বর্ণিত হয়েছিল এবং আপনি যদি তা বুঝতে পারেন তবে আরও ভাল পড়বে।
দীর্ঘশ্বাস! আমার অংশটি ইতিমধ্যে ব্যস্ত বিষয়টিতে যোগ করতে চায়নি, তবে আমার অন্য অংশটি জিতেছে! কেন এটি জিতেছে; আমি কেন এই বিশেষ বহুমুখী ভাষায় আরও শব্দ যুক্ত করতে বিরক্ত করছি? ঠিক আছে, কারণ কিছুটা ডিগ্রি নিয়ে আমার পূর্ববর্তী অনেক ভাষ্যকারের চেয়ে কিছুটা আলাদা হতে পারে।
বাইনারি কম্পিউটারগুলিতে দুর্দান্ত কাজ করে: এটি '1' বা '0', "চালু" বা "বন্ধ"। আমরা বিখ্যাত two দুটি রাজ্য ব্যবহার করে প্রচুর তথ্য বিমূর্ত করতে এবং এনকোড করতে পারি। তবে, এটি মানুষের বিষয়গুলির জন্য এতটা ভাল কাজ করার ঝোঁক দেয় না: "ভাল" বা "খারাপ," "বুদ্ধিমান" বা "উন্মাদ," "ভাল" বা "মন্দ," "স্মার্ট" বা "বোকা," "চর্বি" বা "পাতলা," "জীবিত" বা "মৃত?" এই ধরণের মেরুকৃত মূল্যায়ন সর্বদা যত্নশীল মানবকে আমার অংশ মারাত্মক অসন্তুষ্ট করে দিয়েছে left আমি যে কোনও পরিমাপের স্কিম প্রয়োগ করার জন্য বেছে নিই, আমি সাধারণত দেখতে পাই যে এই ধরণের বিপরীতগুলির উত্তরগুলি প্রকৃতপক্ষে কোথাও কোথাও এই ধরণের একটি মেরু এবং অন্যটির মধ্যে স্থির থাকে, উভয় প্রান্তে নয়।
আমি বেশ কিছুদিন ধরেই মেরুকরণের দিকে এই প্রবণতার সাথে লড়াই করেছি এবং আমার ব্যক্তিগত সমাধান হ'ল এই জাতীয় যে কোনও মূল্যায়নে তিনটি শব্দ প্রয়োগ করা আমার কাছে আরও বেশি কার্যকর বলে মনে হয়েছে: " কোন ডিগ্রীতে!"
সুতরাং, আপনার প্রশ্নের আমার উত্তরটি হ'ল আপনি এটি পুনর্বিবেচনার পরামর্শ দিন এবং নিজেকে এটি জিজ্ঞাসা করার জন্য: "আমি কোন প্রোগ্রামে খারাপ প্রোগ্রামার?" বা, আরও ভাল, এটি অন্য দিকে জিজ্ঞাসা করার জন্য: "আমি একজন ভাল প্রোগ্রামার কোন ডিগ্রীতে?" আপনি যদি সত্যের অনুসরণ করেন তবে আপনি সম্ভবত "খারাপ" প্রোগ্রামার এবং "ভাল" একজনের মধ্যে একটি ধারাবাহিকতায় নিজেকে কোথাও খুঁজে পাবেন। তারপরে, আপনি একবার এই পথের সাথে আপনি যেখানে অবস্থান করছেন সেখানে অবস্থান নির্ধারণ করার পরে, আপনি সম্ভবত "ভাল" শেষের কিছুটা কাছাকাছি একটি বিন্দুটি সনাক্ত করতে পারবেন - এমন একটি বিন্দু যেখানে আপনি অদূর ভবিষ্যতে নিজেকে খুঁজে পেতে চান।
আপনি যদি সেই বিন্দুটি খুব দূরে সেট না করেন, আপনি সম্ভবত গিয়ারের সাথে আপনার শেষ প্রান্তটি পেতে পারেন এবং এটিকে সেদিকে চালানো শুরু করতে পারেন। আপনি যদি বেশ কয়েকবার এই বরং সরল হিউরিস্টিক অ্যালগরিদম পুনরাবৃত্তি করার ব্যবস্থা করেন, আপনি খুব শীঘ্রই নিজেকে আরও ব্যস্ত প্রোগ্রামিংয়ে আবার এই প্রশ্নটি জিজ্ঞাসা করতে পারেন! ওহ, এবং আপনি সম্ভবত যত দ্রুত সম্ভব কীবোর্ডে কোড পাউন্ডিং শুরু করেন আপনি সম্ভবত দ্রুত অগ্রগতি অর্জন করবেন; এবং, আপনি যদি এখনই কিছুটা বিরতি নেন তবে আপনার সমবয়সীদের দ্বারা লিখিত কিছু উচ্চমানের কোডটি পড়ুন! গতিশীল ওপেন সোর্স বিকাশের এই দিনগুলিতে, আপনার কাছ থেকে শেখার জন্য নিখরচায় এবং সূক্ষ্ম কোডের অভাব নেই!
সুতরাং, আমি আপনাকে দৃ strongly়ভাবে প্রস্তাব দিচ্ছি যে আপনি আমার তিনটি ছোট শব্দ "কোন ডিগ্রী পর্যন্ত" চেষ্টা করুন এবং দেখুন যে তারা আপনাকে কতটা ভাল দিকে নিয়ে যেতে পারে!
কেউ বলে যে "এটি করা যায় না"।
আমার মতে এটি সমস্যা সমাধান সম্পর্কে সমস্ত, বাস্তবে কাজটি করার চেয়ে সরঞ্জামটি খুব কম প্রাসঙ্গিক হওয়া উচিত। আমি যদি এমএস-অ্যাক্সেস বা সমাবেশ ভাষা ব্যবহার করে এটি সমাধান করতে পারি তবে এটি সময় এবং অর্থের বিষয়, "এটি করা যায় না" এর বিষয় নয়
একটি সতর্কতা চিহ্ন হ'ল কাজ করার একাডেমিক এবং "সঠিক" পদ্ধতিতে খুব বেশি মনোনিবেশ করা এবং কাজ শেষ করার ক্ষেত্রে পর্যাপ্ত মনোযোগ দেওয়া হয় না।
যদি তিনি কেবল কোনও ভাষার বাক্য গঠন জানেন তবে অ্যালগরিদমের প্রাথমিক ধারণাটি জানেন না।
তাত্ক্ষণিক স্বীকৃতি সংকেতটি কেউ বলছেন: "কেন এটি কাজ করে না আমি বুঝতে পারি না everything আমি সবকিছু ঠিকঠাক করেছি।"
একটি জিনিস যা কোনও নবজাতক প্রোগ্রামারদের থেকে খারাপ প্রোগ্রামারকে আলাদা করে তোলে তা হ'ল তারা যে ভাষা এবং এপিআইতে কাজ করছে তাতে তাদের প্রিয় সিস্টেমটি প্রয়োগ করার জন্য জেদ জেদ।
আমি একবারে এমন একটি সিস্টেম উত্তরাধিকার সূত্রে পেয়েছি যেখানে পূর্ব বিকাশকারী পুনরায় প্রয়োগ করা হয়েছিল (জাভাতে) কাস্টম ডিবিএফ অ্যাক্সেস লাইব্রেরির শীর্ষে অ্যাশটন টেট ডিবেস তৃতীয় + এপি বিস্তৃত একটি বড় সেট। জাভা সংগ্রহের কোনও ফ্রেমওয়ার্ক ব্যবহার করা হয়নি।
এটি এমন একটি জাভা / সুইং অ্যাপ্লিকেশন লিখতে পারে যা দেখতে পেয়েছিল এবং ডিবেস তৃতীয় + (বা সম্ভবত ক্লিপার) অ্যাপ্লিকেশনটির মতো দেখেছিল।
এই সিস্টেমে তিনি যে অ্যাপ্লিকেশনগুলি লিখেছেন তাতে লাইট-বার মেনু ছিল এবং আপনি যখন লাইট-বারটি বিকল্পটিতে নেভিগেট করেন তখন নীচে একটি সারি বোতামগুলির সাথে একটি পূর্ণ উইন্ডো ফর্ম খুলবে। এটি 1980 এর দশকের দিকে একটু সময় মেশিনের মতো ছিল।
লোকটি স্পষ্টতই দক্ষ বিকাশকারী ছিল। তিনি যথেষ্ট পরিমাণে জানতেন যে তিনি সেই পুরো সিস্টেমটি নিজেই সেই প্রকল্পের টাইম ফ্রেমে লিখতে পেরেছিলেন। তিনি অন্যান্য কয়েকটি অভ্যন্তরীণ সিস্টেমে এটি পুনরায় ব্যবহার করতে সক্ষম হন।
তবে তিনি একটি বিস্ময়কর প্রোগ্রামার ছিলেন যে তার কোড তার উপর কাজ করা সিস্টেমগুলির বৈশিষ্ট্যগুলির অপব্যবহার করেছিল। তিনি জাভা / সুইং / এসকিউএল শেখার চেয়ে সন্দেহজনক বেনিফিটের একটি কাস্টম লাইবে 3 মাস ব্যয় করতে আরও আগ্রহী ছিলেন।