আমি 5 বছরেরও বেশি সময় ধরে বেশিরভাগ একক সফ্টওয়্যার প্রকল্পে কাজ করছি। এটি দিয়ে আমি শুরু করলাম (আমি তৃতীয় বা চতুর্থ বিকাশকারী এটির উপর কাজ করে যাচ্ছি), যদিও এটি এখন খুব কম গণ্ডগোল করে নিলেও এটি এখনও অবিশ্বাস্যরূপে বিশৃঙ্খলাবদ্ধ। এটিকে নিয়ন্ত্রণে আনার ক্ষেত্রে অগ্রগতির হার হিমশীতল এবং আমি যে রাষ্ট্রটি রয়েছে তাতে হতাশাবোধ করতে শুরু করছি really কীভাবে আমি এটি ঠিক করতে শুরু করব?
প্রকল্পের সুনির্দিষ্ট: এটি মাইএসকিউএল এর ব্যাক এন্ড এবং সি # তে লিখিত একটি রিপোর্টিং ইঞ্জিন সহ ভিজ্যুয়াল বেসিক ক্লাসিক (ভিবি 6) তে প্রায় সম্পূর্ণ লিখিত একটি বিক্রয় প্রোগ্রাম। সি # রিপোর্টিং মডিউলটি কাজ করার জন্য একটি আনন্দ, এটি কেবল কয়েক বছর আগে লেখা হয়েছিল এবং এর আগে সমস্ত প্রতিবেদন স্ফটিক প্রতিবেদন 9-এ করা হয়েছিল (হ্যাঁ, আমাদের এখনও কিছু প্রতিবেদন রয়েছে যা এটি নির্ভর করে)।
আসল প্রোগ্রামটি নিজেই তবে একটি সম্পূর্ণ বিপর্যয়। মোট 90k এলওসি মোট নেই, এবং প্রায় 10 কে লাইনের মন্তব্যে (বেশিরভাগ ডকুমেন্টেশন নয়, তবে পুরানো কোড যা মন্তব্য করা হয়েছে)। 158 ফর্ম ফাইল, এবং 80 টি মডিউল ফাইল। এগুলির মধ্যে আসলে কতগুলি ব্যবহার করা হয়েছে সে সম্পর্কে আমার কোনও ধারণা নেই, কারণ প্রোগ্রামের কিছু বৈশিষ্ট্যগুলি কেবল প্রোগ্রাম থেকে সরিয়ে দেওয়া কোড ব্যতীত কেবল অবহিত করা হয় এবং (উহ, কখনও কখনও) হিসাবে চিহ্নিত করা হয়। আমি অনুমান করব যে কোডের কেবল 50% প্রকৃত উত্পাদনশীল ব্যবহারে।
আমি কোডটি প্রচুর পরিমাণে স্পর্শ করতে ভয় পাই কারণ আমি নিশ্চিত নই যে আমি যদি কোনও অস্পষ্ট ক্লায়েন্টের উপর নির্ভর করে এমন কিছু ভেঙে ফেলি, তবে এটি আমার চেয়ে বেশি উপলক্ষে ঘটেছে। এটি পুরো কোড জুড়ে রয়েছে ল্যান্ডমাইনগুলি।
প্রকল্পের আসলে কোনও কাঠামো নেই। এখনও অবধি সংস্কার করার ধৈর্য সহ আমি যে কয়েকটি স্থানে রয়েছি তা ব্যতিরেকে এটি উদ্দেশ্যযুক্ত নয়। যদি আপনাকে কোনও ফর্মে ডেটা পেতে প্রয়োজন হয়, আপনি একটি ডাটাবেস অবজেক্ট ইনস্ট্যান্ট করুন, ফাংশনটিতে আপনার ক্যোয়ারীটি ঠিক সেখানে ঘোষণা করুন, এটি সম্পাদন করুন এবং ডেটাসেট দিয়ে আপনি যা চান তা করুন।
আমি যখন প্রকল্পটিতে কাজ শুরু করি তখন ব্যবহারের কোনও উত্স নিয়ন্ত্রণ ছিল না। আমি অন্যান্য লোকদের এটির ব্যবহারের জন্য উত্সাহিত করার চেষ্টা করেছি, তবে আমিই নতুন লোক এবং লোকেরা সমস্তরকম বিপর্যয় ব্যবহার করার চেষ্টা করায় ব্যর্থ হয়েছিল তবে ব্যর্থ হয়েছিল। সংস্থার শীর্ষস্থানীয় বিকাশকারী শেষ অবধি কয়েক বছর ধরে একটি পারদর্শী ত্রুটি পেয়েছে এবং তিনি নিশ্চিত করেছেন যে সমস্ত বিকাশকারীরা এখন সমস্ত প্রকল্পে উত্স নিয়ন্ত্রণ ব্যবহার করেন, তাই অন্তত এটি কিছুটা অগ্রগতি।
আমি মনে করি যদি আমি প্রকল্পটি পুরো সময়ের সংস্কারে কাজ করতে সক্ষম হয়েছি তবে আমি যথাযথ অগ্রগতি অর্জন করতে সক্ষম হতে পারি এবং এমনকি প্রকল্পটি সম্পূর্ণরূপে রূপান্তর করতে আমার কতক্ষণ সময় নেবে এটি সম্পর্কে একটি অনুমানও থাকতে পারে তবে এটি সক্রিয় ব্যবহারে রয়েছে এবং আমি অবিচ্ছিন্নভাবে আগুন লাগাতে, বাগগুলি ঠিক করতে, বৈশিষ্ট্যগুলি যোগ করতে, ইত্যাদি বলা হচ্ছে being
তাহলে আমি কীভাবে সত্যিই এই প্রকল্পটি ঠিক করতে শুরু করব? অন্য ভাষা দিয়ে ভিবি 6 কে সরঞ্জাম দেওয়ার চেষ্টা করবেন? আমার অতিরিক্ত সময়ে প্রোগ্রামটি পুনরায় লেখার চেষ্টা করে দেখুন? নাকি এ পুরোপুরি হতাশ?
হালনাগাদ
এই পোস্টের পরে আমি পুনরায় উদ্দীপনা নিয়ে প্রকল্পে ফিরে গেলাম, তবে এত ধীর গতিতে অগ্রগতি দেখে কয়েক মাসের মধ্যেই হতাশায় ফিরে গেলাম। এরপরে আমি পরের বছর বা তার বেশি সময় ধরে এই চক্রটি আরও 2 বা 3 বার পুনরাবৃত্তি করেছি।
আমি তখন থেকে অন্য একটি চাকরিতে চলে এসেছি। যদিও ভিবি 6 এর এত বছর পরে, এবং অন্যান্য প্রযুক্তিগুলির সাথে কেবল পেরিফেরিয়াল অভিজ্ঞতা সন্ধান করা কঠিন ছিল এবং আমি পথ ধরে বহু প্রত্যাখার মুখোমুখি হয়েছিলাম (এক বছর ধরে প্রায় এক ডজন সাক্ষাত্কার)। এই পরিস্থিতিতে অন্যদের কাছে আমার পরামর্শটি এই বিষয়টিকে একা রেখে যাওয়া বিবেচনা করা। এই হিসাবে একটি মৃত শেষ অবস্থানে থাকার মাধ্যমে আপনি আপনার কেরিয়ারের যে ক্ষতি করতে পারেন তা বিবেচনা করুন।