প্রোগ্রামিংয়ে আগ্রহী হন এবং কিছু করুন কারণ এটি মজাদার। নিশ্চিত হয়ে নিন যে এটি পর্যাপ্ত মজা করেই চলেছে যাতে আপনি আপনার দশ বছর / 10,000 ঘন্টা রাখতে চান।
প্রোগ্রাম । শেখার সেরা ধরণটি শিখিয়ে করা হয়। এটিকে আরও প্রযুক্তিগতভাবে বলতে গেলে, "প্রদত্ত ডোমেনের ব্যক্তিদের জন্য সর্বোচ্চ স্তরের পারফরম্যান্স বর্ধিত অভিজ্ঞতার ফাংশন হিসাবে স্বয়ংক্রিয়ভাবে অর্জিত হয় না, তবে উন্নতির ইচ্ছাকৃত প্রচেষ্টার ফলস্বরূপ উচ্চ অভিজ্ঞ ব্যক্তিরাও পারফরম্যান্সের স্তরটি বাড়িয়ে তোলেন improve । " (পি। ৩66) এবং "সর্বাধিক কার্যকর শেখার জন্য নির্দিষ্ট ব্যক্তি, তথ্যবহুল প্রতিক্রিয়া, এবং পুনরাবৃত্তি এবং ত্রুটিগুলির সংশোধন করার সুযোগগুলির জন্য উপযুক্ত অসুবিধা স্তর সহ একটি সুসংজ্ঞায়িত কার্য প্রয়োজন" " (পৃষ্ঠা 20-21) প্র্যাকটিস ইন প্র্যাকটিস বই: মন, গণিত এবং সংস্কৃতি ইন নিত্যদিনের জীবন এই দৃষ্টিভঙ্গির জন্য একটি আকর্ষণীয় উল্লেখ।
অন্যান্য প্রোগ্রামারদের সাথে কথা বলুন; অন্যান্য প্রোগ্রাম পড়ুন । এটি কোনও বই বা প্রশিক্ষণ কোর্সের চেয়ে গুরুত্বপূর্ণ।
আপনি যদি চান, একটি কলেজে চার বছরের মধ্যে রাখুন (বা স্নাতক স্কুলে আরও কিছু)। এটি আপনাকে এমন কিছু চাকরিতে অ্যাক্সেস দেবে যার জন্য শংসাপত্রগুলির প্রয়োজন, এবং এটি আপনাকে ক্ষেত্রের আরও গভীর ধারণা দেবে, তবে আপনি যদি স্কুলটি উপভোগ না করেন তবে আপনি (কিছু উত্সর্গের সাথে) নিজের বা চাকরিতে একইরকম অভিজ্ঞতা পেতে পারেন । যাইহোক, একা বইয়ের পড়াশোনা যথেষ্ট হবে না। দ্য নিউ হ্যাকার ডিকশনারির লেখক এরিক রেমন্ড বলেছেন, "কম্পিউটার বিজ্ঞান শিক্ষা ব্রাশ এবং পিগমেন্টের অধ্যয়নের চেয়ে কাউকেই বিশেষজ্ঞ প্রোগ্রামার করে তুলতে পারে না।" আমি যে সর্বকালের সেরা প্রোগ্রামারকে নিয়োগ করেছি তার মধ্যে একটি মাত্র হাই স্কুল ডিগ্রি ছিল; তিনি প্রচুর দুর্দান্ত সফ্টওয়্যার তৈরি করেছেন, তার নিজস্ব নিউজ গ্রুপ আছে এবং নিজের নাইটক্লাব কিনতে স্টক অপশনে যথেষ্ট পরিমাণে প্রস্তুত করেছেন।
অন্যান্য প্রোগ্রামারদের সাথে প্রকল্পগুলিতে কাজ করুন । কিছু প্রকল্পের সেরা প্রোগ্রামার হন; কিছু অন্যের উপর সবচেয়ে খারাপ হতে হবে। আপনি যখন সেরা হন, আপনি কোনও প্রকল্পের নেতৃত্ব দেওয়ার জন্য আপনার নিজের দক্ষতা পরীক্ষা করতে এবং অন্যকে আপনার দৃষ্টি দিয়ে অনুপ্রাণিত করতে পারেন। আপনি যখন সবচেয়ে খারাপ হন, আপনি মাস্টাররা কী করেন তা শিখেন এবং তারা কী করতে পছন্দ করেন না তা শিখেন (কারণ তারা আপনাকে এটি তাদের জন্য করে তোলে)।
অন্যান্য প্রোগ্রামারগুলির পরে প্রকল্পগুলিতে কাজ করুন । অন্য কারও দ্বারা লিখিত একটি প্রোগ্রাম বুঝুন। মূল প্রোগ্রামারগুলি আশেপাশে না থাকলে এটি বুঝতে এবং এটি ঠিক করতে কী লাগে তা দেখুন। আপনার পরে যারা এগুলি বজায় রাখবেন তাদের জন্য কীভাবে আপনার প্রোগ্রামগুলি ডিজাইন করবেন তা ভাবুন।
কমপক্ষে অর্ধ ডজন প্রোগ্রামিং ভাষা শিখুন। শ্রেণীর বিমূর্ততা (যেমন জাভা বা সি ++) সমর্থন করে এমন একটি ভাষা অন্তর্ভুক্ত করুন (যেমন লিস্প বা এমএল) ফাংশনাল বিমূর্ততা সমর্থন করে, সিনট্যাকটিক অ্যাবস্ট্রাকশন (লিস্পের মতো) সমর্থন করে এমন একটি ভাষা, যেমন প্রলোজ বা সি ++ টেম্পলেটগুলির সমর্থন করে, একটি যা কর্টিনগুলিকে (যেমন আইকন বা স্কিম) সমর্থন করে এবং সমান্তরালতা (সিসালের মতো) সমর্থন করে।
মনে রাখবেন যে "কম্পিউটার বিজ্ঞানে" একটি "কম্পিউটার" রয়েছে। আপনার কম্পিউটারকে কোনও নির্দেশিকা কার্যকর করতে, মেমোরি থেকে কোনও শব্দ আনতে (ক্যাশে মিস সহ এবং নাও), ডিস্ক থেকে একটানা শব্দগুলি পড়তে এবং ডিস্কে একটি নতুন অবস্থানে যেতে কতক্ষণ সময় নেয় তা জানুন। (উত্তর এখানে।)
একটি ভাষা মানীকরণের চেষ্টায় জড়িত হন। এটি এএনএসআই সি ++ কমিটি হতে পারে বা আপনার স্থানীয় কোডিং শৈলীতে 2 বা 4 স্পেস ইনডেন্টেশন স্তর থাকবে কিনা তা সিদ্ধান্ত নিতে পারে। যে কোনও উপায়ে, আপনি অন্য ভাষাগুলিতে কী পছন্দ করেন, তারা কতটা গভীরভাবে অনুভূত হয় তা এবং তারা কেন এমন বোধ করে তা সম্পর্কে কিছুটা শিখতে পারেন।
ভাষা মানীকরণের প্রচেষ্টা যত তাড়াতাড়ি সম্ভব বন্ধ করার জন্য যথাযথ জ্ঞান অর্জন করুন।