কোন বন্ধুর সাথে যখন একটি ছোট প্রকল্প ত্যাগ করা যায় তখন আমি কীভাবে নির্ধারণ করি তা কী কারণগুলিকে প্রভাবিত করবে? [বন্ধ]


30

আমি নিজেকে দেরীতে হিসাবে একটি শক্ত জায়গা পেয়েছি। প্রায় 8 মাস ধরে একটি প্রোগ্রামিং বন্ধুটির সাথে একটি গেমের সাথে কাজ করা হয়েছে। আমরা দুজনেই গত বছরের আগস্টের দিকে প্রোগ্রামিংয়ে নতুন হিসাবে যাত্রা শুরু করেছিলাম, তিনি ২ য় বর্ষের সিএস শিক্ষার্থী, আমি ব্যবসায়ের মাধ্যমে আইটি সাপোর্ট টেক এবং বহু বই এবং অনলাইন সাবস্ক্রিপশন সহ একটি স্ব-শিক্ষিত প্রোগ্রামার।

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

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

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

আমাদের প্রকল্পে আমার একটা স্বার্থক আগ্রহ আছে, তবে আমি নিশ্চিত নই যে আমি আমার সঙ্গীর সাথে কাজ চালিয়ে যেতে পারি কিনা। আমার কাছে আমার কাছে তিনটি বিকল্প খোলা আছে বলে মনে হচ্ছে।

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

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


3
একটি সম্মত কোডিং শৈলী নির্দেশিকা এবং একটি কোড পর্যালোচনা প্রক্রিয়া নিয়ে আসা সম্পর্কে কী? কোনও বিতর্কিত সমস্যা এড়িয়ে চলুন, কেবলমাত্র সেই মানটিতে যথেষ্ট পরিমাণে রাখুন যে আপনি উভয়ই এতে সম্মত হতে পারেন।
ব্র্যান্ডিন 14'15

25
চতুর্থ বিকল্প (যদি এটি অনুমোদিত লাইসেন্সের অধীনে থাকে): কোডটি তৈরি করুন এবং আপনার নিজের কাজ চালিয়ে যান।
রবার্ট হার্ভে

4
কোডটি কীভাবে লাইসেন্স দেওয়া হয়? আপনি কি এটি কাঁটাচামচ করতে এবং অন্য কারও সাথে চালিয়ে যেতে পারেন?
জয়দি

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

3
আপনি যা সিদ্ধান্ত নেন তা বিবেচনা না করেই কোডের 10 কে লাইনগুলি নষ্ট হয় না: সেগুলি লিখে আপনি কী শিখলেন তা ভেবে দেখুন; কোডিংয়ের সময় আপনার যে আনন্দ হয়েছিল তা ভাবুন; এবং, আপনি (জোরপূর্বক) তৃতীয় / চতুর্থ / এন + 1 তম পুনরাবৃত্তিতে যা শিখেছেন তা প্রয়োগ করে এটি বর্তমান সংস্করণের চেয়ে আরও ভাল করে তুলতে পারে। আপনি যদি 10k লাইন কোডটি লিখতে জানেন তবে আপনি তুলনামূলক স্বল্প সময়ে 10 কে লাইন লিখতে পারেন; জিনিসগুলি কাজ করতে কী লিখতে হয় তা প্রায়শই এটি সর্বাধিক সময় নেয় the
ক্যাস্পার ভ্যান ডেন বার্গ

উত্তর:


26

শিপড, অসম্পূর্ণ কোড হোয়াইটবোর্ডে নিখুঁত কোডের চেয়ে ভাল যা কখনই শিপ হয় না।

বলা হচ্ছে যে...

আপনারা যাদের আরও বেশি অভিজ্ঞতা আছে বা এটি একইরকম পরিস্থিতিতে পড়েছে। আপনি কি করেছিলেন? আপনি কি আমি সুপারিশ করবে?

আমি নিম্নলিখিত বিবেচনা করবে।

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

এই প্রকল্পে প্রোগ্রামিং বন্ধ করুন, আমার কোডের প্রায় 10,000 লাইন এবং ডিজাইনের উপরে স্ল্যাভিংয়ের অসংখ্য ঘন্টা ছেড়ে দিন এবং আমার নিজের উপর একটি নতুন প্রকল্প চেষ্টা করুন

উপরের বিষয়টি বিবেচনা করুন, অতিরিক্ত অতিরিক্ত কাজের প্রয়োজনের মাধ্যমে চিন্তা করার চেষ্টা করুন।

আপনাকে নিজের অগ্রাধিকারগুলি খুঁজে বের করতে হবে এবং এই ব্যক্তির সাথে কাজ করার সাথে সম্পর্কিত সমস্যাগুলি উপযুক্ত কিনা তা নির্ধারণ করতে হবে। আমরা আপনার জন্য এটি নির্ধারণ করতে পারি না।

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

আপনি জানেন যে আপনি এই ধরণের ব্যক্তির সাথে কাজ করতে চান না।

আপনি সম্ভবত এটির মতো একটি প্রকল্প করছেন কারণ আপনি প্রোগ্রামিং শিখতে এবং নৈপুণ্যে নিজেই কমনীয়তা পেতে চান।


1
ধন্যবাদ তোমার উত্তরের জন্য. আমি মজা করার উদ্দেশ্যটি অর্জন করছি (যখন বিপর্যয় নয়) এবং শেখার। আবহাওয়া যে কোনও অর্থ উপার্জন করতে হয় তা সম্পূর্ণ আলাদা গল্প। তিনি আমার লক্ষ্যগুলি অর্জনে সহায়তা করেন, তবে আমি বিশ্বাস করি যে আমি এখনও নিজের দ্বারা সেগুলি অর্জন করতে পারি, তিনি অনুপ্রেরণায় সহায়তা করেন। গেমটি বৈশিষ্ট্য স্খলনের একটি দুর্দান্ত উদাহরণ, কখন প্রেরণ করতে পারে তা আমার সত্যিই কোনও ধারণা নেই। আমার অংশীদার কয়েক মাস ধরে 2D থেকে 3D এ পরিবর্তনের জন্য চাপ দেওয়ার চেষ্টা করছে, আমি ইতিমধ্যে প্রত্যাখ্যান করছি যেহেতু আমরা ইতিমধ্যে আমাদের ক্ষেত্রটি দীর্ঘকাল অতিক্রম করেছি।
ডগলাস গ্যাসকেল 14'15

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

1
বন্ধুর হারানোর দ্রুততম উপায় হ'ল সমান হিসাবে তাদের সাথে কাজ করা!

58

এটি একটি সাংস্কৃতিক জিনিস হতে পারে। কিছু সংস্কৃতিতে, আপনি যে ভুল করেছেন তা স্বীকার করা অযৌক্তিক, এবং কাউকে ভুল করার কথা স্বীকার করতে বলা আপনার পক্ষে করা সবচেয়ে বিরক্তিকর কাজ is যদি এমন অবস্থা হয় তবে পালিয়ে যান।

খুব স্মার্ট লোকের সাথে আমার অভিজ্ঞতার মধ্যে যদি আপনি তাদের বলছেন যে তারা কিছু করছে যা নিখুঁত চেয়ে কম, তারা হয় (1) তারা যা করছে তা আসলে সঠিক কেন তা আপনাকে একটি সঠিক এবং সহজে বোঝার কারণ দেবে, (২) বলুন আপনি যে তারা জানেন যে এটি ভুল, কিন্তু তাদের কাছে অগ্রাধিকারের কারণে এটি ঠিক করার সময় নেই, বা (3) এটিকে নির্দেশ করে এবং এটি সংশোধন করার জন্য আপনাকে ধন্যবাদ।

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


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

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

ঠিক আছে, মনে হয় যে সময় চাপ পরিবর্তনগুলি অস্বীকার করার কারণ নয়।
gnasher729

1
এটি একটি দুর্দান্ত উত্তর। আপনি কাউকে তাদের উপায় পরিবর্তন করতে বাধ্য করতে পারবেন না! তবে, এটির মতো মনে হচ্ছে প্রকল্পটি শেষ হওয়ার সাথে সাথে আপনার হিসাবে প্রচুর সময় এবং প্রচেষ্টা নিভিয়েছে। আমার চিন্তাভাবনাটি হতে পারে যে তিনি তার কোডটি পরিবর্তন করতে চান না কারণ তিনি যেভাবে আপনার মনে করেন যে এটি করা উচিত সেভাবে বুঝতে পারে না। এটি হয় সে হয় না সে মাথা বেঁচে থাকে তবে এটি যদি সে বুঝতে পারে না তবে মনে মনে রাখার চেষ্টা করুন যে তিনি হতাশ হয়ে পড়েছেন এবং মনে করেন আপনি তার সাথে "কথা বলছেন", যদিও আপনি খুব ভাল বোঝাতে চাইছেন। আমার পরামর্শটি হল আপনি যখন উভয়ই এটির সাথে কথা বলুন তখন তাঁর সাথে এটির সাথে কথা বলার চেষ্টা করা হয়।
zfrisch

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

12

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

অন্যদিকে, একটি কাজের পণ্যটি বেশ কয়েকটি বছরের সূক্ষ্ম সুরক্ষা, মার্জিত, স্পষ্ট কোডের মূল্য। গেমটি তৈরি করুন, শিপ করুন, তারপরে চলে যান - এটি বজায় রাখতে তাকে ছেড়ে যান এবং ভি 2-তে কাজ করবেন না।


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

20
আপনাকে যা না অধীনে যে কোন পরিস্থিতিতে যে মত একটি ব্যক্তির সাথে আইনগতভাবে বাধ্য ব্যবসায়িক সম্পর্ক প্রবেশ করতে চান।
gnasher729

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

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

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

9

এগুলির কয়েকটি পারস্পরিক একচেটিয়া থাকলেও এখানে কিছু ধারণা রয়েছে।

  • উত্সের দায়িত্ব পৃথক করুন। আপনি যদি মডিউল এ এবং তাকে মডিউল বি তে কাজ করেন তবে আপনি আপনার বিভিন্ন শৈলীর সাথে প্রতিযোগিতা করতে পারবেন। তিনি প্রায়শই কাজের বৈশিষ্ট্য প্রকাশ করছেন? সে কি এমন এক জায়গায় পৌঁছে যায় যেখানে তার স্ক্র্যাচ থেকে তার কোডটি আবার লিখতে হবে? আপনার মডিউলগুলি থেকে কোডটি রিফ্যাক্ট করুন এবং তাকে স্পর্শ করবেন না,

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

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

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

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

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

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

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

আপনার দুজনকে না জেনে আমরা সেরা সমাধানটি কোনটি বলে দিতে পারি না। শুভকামনা।


4

ঠিক আছে, এই উত্তরটি সম্ভবত আপনার পছন্দ হবে না is

কোডটি বৈশিষ্ট্যটি প্রয়োগ করতে ব্যর্থ না হলে 'সংশোধন' করবেন না।

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

বেশিরভাগ সংস্থার একই সমস্যা। Refactor বিদ্যমান কোড এটা ভাল 'করতে, কখনো কখনো এমনকি বস্তুনিষ্ঠ গতি বা নির্ভরযোগ্যতা পরিপ্রেক্ষিতে ভাল বা নতুন বৈশিষ্ট্য লিখুন।

99% সময় তারা নতুন বৈশিষ্ট্যগুলি লিখতে পছন্দ করে কারণ সাধারণ ব্যয় বেনিফিট বিশ্লেষণের ফলাফল।


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

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

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

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

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

3

আমি এখন পর্যন্ত সব উত্তর পছন্দ। এন্ডারল্যান্ডের উত্তর থেকে একটি পয়েন্ট নিচ্ছেন :

হতাশ হয়ে গেলে কারও সাথে স্বেচ্ছাসেবী কাজ করার সুবিধা রয়েছে?

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

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

  • আপনি পরিস্থিতির সংবেদনশীল উত্তেজনা থেকে সংযোগ বিচ্ছিন্ন করতে পারেন।

  • আপনি রিয়েল-টাইম পেশাদার পরামর্শ পান। আপনি যা শিখছেন তাতে একটি বড় উত্সাহ।

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

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

একইভাবে, গেম ডেভেলপার স্ট্যাক এক্সচেঞ্জ রয়েছে । পর্যালোচনার জন্য কোড পোস্ট করার মতো খুব বেশি জায়গা নয়, তবে আপনি যে ধারণাগুলি বা ধারণাগুলি নিয়ে संघर्ष করছেন সেগুলি সম্পর্কে জিজ্ঞাসা করুন। আবার, সেই জায়গাটি জড়িত সকলের জন্য অত্যন্ত সহায়ক।

আপনি এই সাইট দুটি আগেও দেখে থাকতে পারেন; আমি কেবল এটি নিশ্চিত করতে চেয়েছিলাম যে তারা আপনার সরঞ্জামসেটের অংশ।


2

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

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

ডগলাস: আমি এটি পরিবর্তন করতে চাই কারণ এক্স, যা আমাদের নির্দেশিকাগুলিতে ঠিক এখানে রয়েছে।

বন্ধু: এটা ঠিক আছে।

ডগলাস: সুতরাং আপনি বলছেন যে আমাদের গাইডলাইনগুলি পরিবর্তন করা উচিত?

বন্ধু: না, আমি মনে করি এটি ঠিক আছে।

ডগলাস: তাহলে গাইডলাইন গুলো কি?

বন্ধু: আমি জানি না - আপনি এগুলি লিখেছিলেন।

ডগলাস: কোন গাইডলাইন লিখবেন?

বন্ধু: আমি গাইডলাইন লিখব না। এটা সময় নষ্ট।

ডগলাস: সুতরাং আমাদের কেবল গাইডলাইনগুলি ফেলে দেওয়া উচিত এবং সেই সময়ে আমরা যা ভাবছি তা বোধ করা উচিত?

বন্ধু: এটি বাজে নয়।

ডগলাস: এটা কি নিখুঁত? এটা আদর্শ?

বন্ধু: কাজটি হয়ে যায়; এর পরের বৈশিষ্ট্যটিতে এগিয়ে আসা যাক।

ডগলাস: এমন কোনও কিছুর উপর আমরা একমত হতে পারি যে এক্সটি ভাল কোড এবং ওয়াইটি খারাপ কোড?

বন্ধু: আমাকে একা ছেড়ে দাও; আমি শুধু কোড করতে চাই!

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

ডগলাস: আপনি কি চান?

বন্ধু: আমি শুধু কোড করতে চাই।

ডগলাস: আমিও কোড করতে চাই, তবে আমি আমার কোডটি নিয়ে গর্ববোধ করতে চাই।

বন্ধু: আমি আমার কোড নিয়ে গর্বিত।

ডগলাস: এখানে এমন একটি ফাংশন যা নিয়ে আমি গর্বিত - আপনি এটি সম্পর্কে কী ভাবেন?

বন্ধু: ঠিক আছে, ঠিক আছে, তবে আপনার লুপের ভিতরে এক্স পুনরায় গণনা করা উচিত নয়; এটা অদক্ষ।

ডগলাস: তাই আপনি কি বলছেন আমাদের সর্বদা লুপের বাইরে ধ্রুবক মান গণনা করা উচিত?

বন্ধু: আচ্ছা, দুহ!

ডগলাস: আপনি কি আমাদের নির্দেশিকাগুলিতে থাকা উচিত বলে মনে করেন?

বন্ধু: অবশ্যই

ডগলাস: ঠিক আছে, আমি এটি আমাদের নির্দেশিকাগুলিতে যুক্ত করব এবং আমি আমার কোড আপডেট করব ...

ডগলাস: এখন কেমন আছে?

বন্ধু: ভাল।

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

তবে আপনি যদি হাল ছেড়ে দিয়ে চলে যান - তবে এটি খুব খারাপ বিকল্প নাও হতে পারে।


2

ধরে নিচ্ছেন আপনি এই প্রকল্পটি পরিত্যাগ করবেন:

  • কোডটি কাঁটাচামচ করুন এবং এটিকে রিফ্যাক্টর করুন, এটি 'পূর্বে / পরে' পোর্টফোলিও আইটেম হিসাবে ব্যবহার করে
  • যেহেতু লক্ষ্যটি ছিল (মূলত বা আংশিক) প্রোগ্রামিং শিখতে এবং যেহেতু কিছু শিখতে আপনার ইতিমধ্যে জানা কোনও কাজ করার জন্য 2-4x সময় লাগে তাই সেই কাজটি আসলে অপচয় হয় না।
  • 'ডুবে ব্যয় সংযুক্তি' (সিদ্ধান্ত নেওয়ার আগে আপনি যে বিনিয়োগটি ইতিমধ্যে একটি উদ্যোগে করেছিলেন এটি সিদ্ধান্ত নেওয়া খারাপ সিদ্ধান্ত) সিদ্ধান্ত গ্রহণের অন্যতম সাধারণ মানবিক ত্রুটি is
  • বন্ধুত্ব বজায় রাখতে কোডিংয়ের চেয়ে বন্ধুত্বকে অগ্রাধিকার হিসাবে আপনার সিদ্ধান্তটিকে ফ্রেম করুন

1

tl; dr আপনার যুক্তিযুক্তভাবে প্রকল্পটি ত্যাগ করা উচিত।

এ সম্পর্কে আরও কিছু না জেনে আপনি আমাদের বলেছিলেন, আমি অনুমান করতে পারি যে আপনি যে ঘর্ষণটি অনুভব করছেন তা অভিজ্ঞতা সম্পর্কিত।

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

আপনার 2 য় বর্ষের সিএস শিক্ষার্থী, এমনকি যদি যথেষ্ট প্রতিভাধর হয় তবে সম্ভবত এটি করার দৃষ্টিভঙ্গির অভাব রয়েছে (যদি আপনি আমার মতো হন তবে বার বার :)।

যতক্ষণ না তিনি ব্যর্থতা থেকে দাগ পোড়াতে বা ব্যতিক্রমী প্রকৌশল শাখা, বা উভয় সংস্কৃতিতে পরামর্শদাতা না হওয়া পর্যন্ত জিনিসগুলি স্থির করার ক্ষেত্রে তিনি কখনই সত্যই বিশ্বাস করতে পারবেন না।

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

অন্যথায় জামিন দিন এবং একটি পিয়ারের সাথে একটি প্রকল্প করুন বা কোনও পরামর্শদাতা / ম্যানটি প্রকল্প করুন যেখানে এটি শুরু থেকেই গতিশীল।


1

সমস্ত দুর্দান্ত উত্তরে অতিরিক্ত পয়েন্ট যুক্ত করতে:

  • প্রকল্পটি শেষ করতে আরও কত বেশি প্রচেষ্টা লাগবে? নোট করুন যে "শেষ 10%" শেষ করতে লোকেরা প্রত্যাশার চেয়ে অনেক বেশি সময় নেয়। এর মধ্যে রয়েছে প্লে টেস্টিং / টিউনিং, ব্যবহারযোগ্যতা স্থিরকরণ, বিভিন্ন টার্গেট প্ল্যাটফর্মগুলির সাথে মোকাবিলা করা, প্রকাশ করা ... সত্যি বলতে, সমাপ্তি প্রথম "90%" হিসাবে সময় নিতে পারে। কোডটি আপনার পরামর্শ অনুসারে যদি খারাপ হয় তবে এটি অতিরিক্ত কঠিন হবে। (আপনি কি এখনই এটি পরীক্ষা করে খেলা শুরু করতে পারেন?)
  • বাস্তবতাত্ত্বিকভাবে, লোকেরা আপনার খেলাটি উপভোগ করবে এটা কতটা সম্ভব?
  • " ডুবে ব্যয় হিউরিস্টিক " থেকে সাবধান থাকুন । বড় চিত্রের আলোকে 10,000 টি লাইন অফ কোড বিনিয়োগ, একটি সমাপ্ত পণ্যটির দিকে ফিরে তাকানো এবং অযৌক্তিক আশাবাদ ছাড়াই মূল্যায়ন করুন।
  • আরও 3 বছর সময় লাগলে আপনি কি চালিয়ে যেতে পারবেন? আপনার দুজনের আলাদা আলাদা বিকাশ শৈলী রয়েছে (একটি ভাল দল ম্যাচ নয়)। দেখে মনে হচ্ছে আপনি আপনার ধৈর্য্যের শেষের কাছাকাছি এবং যদি আপনি চালিয়ে যান তবে বন্ধু থাকা কঠিন হতে পারে।

3
"সর্বশেষ 10%" কোডটি 90%
বর্জ্যযুক্ত

0

আপনার ঠিক মত আপনার কোডটি ঠিক মতো করা উচিত, মতামত এবং এ জাতীয় কোডটির একটি অনুলিপি তৈরি করা (যদি তিনি আপনার কোড পরিবর্তন করেন)।

যুদ্ধ করবেন না, পাগল হয়ে উঠবেন না, যখন আপনি তার দুর্বল সিদ্ধান্তগুলি দেখে কেবল হাসি।

কেবল ব্যবহারকারী হিসাবে অভিযোগ করুন, যদি এটি কাজ করে তবে অভিযোগ করবেন না।

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

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