কম্পিউটার

যখন একটি রেল গভীর ডাইভ নিতে

আপনি কি কখনও এমন একটি Rails বিষয় খুঁজে পেয়েছেন যা আপনার কাছে কোনো অর্থবোধ করেনি?

যেমন, আপনি ভেবেছিলেন আপনি এটি জানেন, তাই আপনি কিছু কোড লিখেছেন, এবং কিছু সম্পূর্ণ ভিন্ন ঘটেছে?

অথবা আপনি জানেন আপনি বুঝতে পারছেন না, কিন্তু আপনি এজ কেস নিয়ে লড়াই করার জন্য এতটা সময় ব্যয় করার ব্যতীত যে আপনি এটি করার জন্য যথেষ্ট জানেন যে আপনি এটি করার সময় পর্যন্ত একজন বিশেষজ্ঞ হতে পারতেন?

আচ্ছা, যদি এমনটা না হতো? শুধু জানা হলে ভালো হবে না কিভাবে জিনিস কাজ করে? আপনার সামনে সমস্যার একটি কঠিন মানসিক মডেল আছে? তাহলে আপনি সঠিক সিদ্ধান্ত নিতে পারেন, এবং সঠিক কোড লিখতে পারেন?

আমি যখন প্রথম ওয়েব ডেভেলপমেন্ট শিখছিলাম, সেশনগুলি ছিল সেই জিনিস:আমি ভেবেছিলাম যে আমি সেগুলি জানতাম, কিন্তু আমি তা করিনি। এবং সেশন সম্পর্কে আমার ভুল বোঝাবুঝি এত বেশি বাগ তৈরি করেছিল যে আমি যে সমস্যাগুলি তৈরি করেছি তার জন্য আমার সমালোচনা করা হয়েছিল৷

শীঘ্রই, আমি বুঝতে পেরেছিলাম যে আমাকে আসলে করতে সময় নিতে হবে সেশন কিভাবে কাজ করে তা বুঝুন। তাদের রহস্যময় করতে, তাদের ভীতিকর বা অদ্ভুত না করতে। এবং অবশেষে, তারা কীভাবে আচরণ করবে তা অনুমান করতে সক্ষম হতে - এবং সঠিক হতে।

"সেশন" একমাত্র বিষয় নয় যেটিতে আমি গভীরভাবে ডুব দিয়েছি। ডেটা মডেলিং, ক্যাশিং, মেটাপ্রোগ্রামিং, এগুলি সবই বিভ্রান্তিকর জিনিস যা সত্যিই ধরনের পেতে সহজ। কাজ কিন্তু আপনি যদি সেগুলি বুঝতে না পারেন তাহলে আপনি চিরন্তন কঠিন ডিবাগিং সমস্যার মধ্যে পড়বেন৷

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

কখন আপনার গভীর ডাইভ করা উচিত?

তাহলে আপনি কিভাবে বুঝবেন কখন গভীর ডুব দেওয়ার সময় হয়েছে?

প্রথমত, একটি গভীর ডাইভ করতে, আপনাকে জানতে হবে আপনি কিসের মধ্যে ডুব দিচ্ছেন৷

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

এর পরে, আপনাকে দুটি পরিস্থিতিতে একটি গভীর ডাইভ করতে হবে:

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

  2. আপনি জানেন আপনি সত্যিই কিছু বুঝতে পারছেন না, এবং এটি ঠিক হয়েছে… কিন্তু এখন, আপনি একটি বাগ ঠিক করছেন, এবং আপনি যা চেষ্টা করছেন তা আপনার সমাধানের চেয়ে বেশি সমস্যার সৃষ্টি করে, যত তাড়াতাড়ি আপনি পুরানোগুলি ঠিক করছেন তত দ্রুত নতুন বাগ তৈরি করছেন৷

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

আপনি যেভাবে কাজ করছেন তা কাজ করছে না তা বুঝতে আপনাকে সাহায্য করার দুটিই উপায়।

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

কিন্তু এখন যেহেতু আপনি সিদ্ধান্ত নিয়েছেন যে আপনার একটি গভীর ডাইভ দরকার, আপনি কীভাবে এটি করবেন?


  1. রেলের সাথে হটওয়্যার ব্যবহার করা

  2. AWS Lambda এ রেল স্থাপন করা হচ্ছে

  3. রেলের সাথে কৌণিক ব্যবহার 5

  4. আপনার রেল অ্যাপের কর্মক্ষমতা বোঝার একটি নতুন উপায়