আপনি আপনার প্রোগ্রামিং দক্ষতা উন্নত করতে একক সবচেয়ে কার্যকর জিনিস কি?


876

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

আমার প্রশ্ন: আপনার প্রোগ্রামিং দক্ষতার উন্নতি আপনি সবচেয়ে কার্যকর কী করেছেন? আপনি অন্যদের উন্নতি করতে চান তাদের কি সুপারিশ করবেন?

আমি এখানে বিচিত্র উত্তর প্রত্যাশা করি এবং কোনও একক "এক আকার সবগুলি ফিট করে না" উত্তর - আমি জানতে চাই বিভিন্ন ব্যক্তির পক্ষে কী কাজ করেছে।


18
অনুশীলন, অনুশীলন, অনুশীলন। এবং মনে মনে প্রথম জিনিসটি নিয়ে কখনই সন্তুষ্ট হবেন না।
মার্ক মুক্তিদান

2
মার্ক রেনসমের জন্য +1 ... অসুবিধা তখনই আসে যখন আপনি এখনও 100 ম বিষয়টি মনে রেখে সন্তুষ্ট নন!
স্টিমুল

5
প্রোগ্রামারস স্ট্যাক এক্সচেঞ্জ সাইটে আমার কোনও সময় নষ্ট না করা আমাকে আমার কোডিং দক্ষতা অত্যন্ত উন্নত করতে সহায়তা করেছে।
কাজ

3
@ মার্ক ট্র্যাপ কীভাবে এটি গঠনমূলক নয়?
ডানফোন

1
@ ডব্লিউটিপি - বর্ণনাটি পড়ুন। "এই প্রশ্নটি আমাদের প্রশ্নোত্তর বিন্যাসের পক্ষে উপযুক্ত নয়" " - এই প্রশ্ন জিজ্ঞাসা কেউ হিসাবে, আমি সম্মত। আরও স্বচ্ছন্দ সময়ে জিজ্ঞাসা করা হয়েছিল।
ওডে

উত্তর:


753

কোনও নির্দিষ্ট ক্রমে নয় ...

  • আমার চেয়ে অনেক বেশি স্মার্ট লোকের সাথে কাজ করা

  • জুনিয়র, মধ্যবর্তী, প্রবীণ বা গুরু নির্বিশেষে অন্যেরা কী বলবে তা সর্বদা শুনুন। কাজের শিরোনাম মানেই কিছু নয়।

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

  • নিদর্শন, সর্বোত্তম অনুশীলনগুলি সম্পর্কে পড়া এবং তারপরে আমার পুরানো জিনিসগুলি পরীক্ষা করে এবং যেখানে প্রয়োজন সেখানে সেই নিদর্শনগুলি প্রয়োগ করা

  • জোড় প্রোগ্রামিং

  • জোয়েল যা বলেছে তার সাথে একমত নয়। ;)


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

117
কীভাবে স্মার্ট লোক ভুলগুলি পরিচালনা করে দেখুন দেখুন - এগুলি যখন আমি তাদের থেকে সবচেয়ে বেশি শিখি

82
এটি যদি কোনও নির্দিষ্ট ক্রমে তালিকা থাকে তবে এটি একটি আদেশযুক্তের চেয়ে একটি আনর্ডারড তালিকা হওয়া উচিত নয়? : পি
জন ডব্লিউ

3
আমি মাইমারদের সাথে একমত - আপনি কারও সাথে একমত না হওয়ার অর্থ এই নয় যে আপনি তাদের উপেক্ষা করছেন। প্রকৃতপক্ষে, এটি বিপরীত - তাদের সাথে একমত হওয়ার জন্য আপনি তাদের প্রতি প্রকৃতপক্ষে মনোযোগ দিচ্ছেন।
ক্রিশ্চিয়ান রোমো

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

557

'জ্যাক-অফ-অল-ট্রেডস' হওয়ার সিদ্ধান্ত নিচ্ছেন

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

আমার একমাত্র সমস্যাটি হ'ল সংস্থাগুলি যে আমাকে বিশেষায়িত করার জন্য পিজন-হোলিংয়ে জোর দিয়েছিল, যখন আমার বিশেষত্ব একজন জেনারালিস্ট হচ্ছেন। [সম্পাদনা: পলিমাথ বা রেনেসাঁ ম্যান বা বহু বিশেষজ্ঞ হিসাবেও পরিচিত । ]

কিছু মনে রাখবেন ... হাই টেকের জ্ঞানের অর্ধেক জীবন কী? এটি মুরের আইনের সাথে সন্ধান করে: আপনি যা জানেন তার অর্ধেকটি 18-24 মাসের মধ্যে অচল হয়ে যাবে। যে বিশেষজ্ঞ ভুল শৃঙ্খলা বেছে নেন সহজেই প্রযুক্তির চাপ দ্বারা হ্রাস পেতে পারে; একজন জেনারেলস্টকে কেবল আরও কিছু দক্ষতা যুক্ত করতে হবে এবং সেই দক্ষতা প্রয়োগের ক্ষেত্রে অতীতের পাঠগুলি মনে রাখতে হবে।


224
"সমস্ত ব্যবসায়ের জ্যাক, কোনওটিরই মাস্টার না হলেও প্রায়শই একজনের মাস্টারের চেয়ে ভাল" " -আডাম সেভেজ
জেএমএস

9
দুর্দান্ত পরামর্শ, আপ ভোট। আমার অতীতের "অনাথ প্রযুক্তি "টি ছিল আমার 8-বিট আটারি, যা সি 64 এর কাছে হেরে গেছে। যদিও আমি একই সিদ্ধান্তে পৌঁছেছি - হেইনলিনের উদ্ধৃতি দিতে, "পোকামাকড়ের জন্য বিশেষত্ব is"

17
সর্বদা ট্রেড অফস থাকে এবং একটি দিনে মাত্র 86,400 সেকেন্ড থাকে - আপনি কীভাবে ব্যয় করতে চান তা আপনাকে সিদ্ধান্ত নিতে হবে। আমার ক্ষেত্রে, আমি যে বিষয়গুলিকে আকর্ষণীয় বলে মনে করেছি বা ভবিষ্যতে চাহিদা হতে চলেছে তা শিখতে আমি অতিরিক্ত ঘন্টা (আমার 'কাজের' ঘন্টার উপরে এবং তার বাইরে) ব্যয় করা বেছে নিয়েছি; আপনি আপনার নিজের পছন্দ করতে হবে।
ক্রেগ ব্যবসায়ী

74
"বিশেষায়িতকরণ পোকামাকড়ের জন্য।" - হেইনলাইন
কেলি এস ফরাসী

31
আপনার "জেনারালিস্ট" ব্যাজটি কোথায়? ^^
আরনিস ল্যাপসা 15

459

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

এটি আমাকে সচেতনভাবে নিজের এবং বিশেষত আমার কোডের কোডের মান উন্নত করার চেষ্টা করার জন্য সতর্ক করেছিল।

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

হারুনের কাছ থেকে আমি সবচেয়ে গুরুত্বপূর্ণ জিনিসটি শিখেছি তা কখনও শেখা বন্ধ করা নয় stop

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

সুতরাং, কয়েক মাস পরে, আমি পাশাপাশি সংস্থাটি ছেড়ে চলে এসেছি। আমি খুব মেধাবী দল নিয়ে একটি ছোট সংস্থায় চলে এসেছি। সেখানকার প্রত্যেকে আরও শিখতে চেয়েছিল, এবং আমি এটি পছন্দ করি।

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


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

28
"1 এর জন্য হারুন সর্বদা কথা বলছিলেন যে আমি কখনই প্রথম কার্যকারী সংস্করণে থামব না, তবে কোডটি মার্জিত না হওয়া পর্যন্ত রিফ্যাক্টর এবং পরিমার্জন করা উচিত"

17
"প্রথম কাজের সংস্করণে কখনও থামবেন না" ??? - কখন আপনার বাকী কাজ শেষ করার কথা? :)

4
আমি হারুন হওয়ার চেষ্টা করেছি, কখনও কখনও এটি কার্যকর হয় তবে কখনও কখনও আমি ভুলও করি। "যাঁরা ইতিহাস থেকে শিখতে পারেন না তারা এর পুনরাবৃত্তি করতে ডরমেড।" আমাদের মনকে নতুন ধারণার জন্য উন্মুক্ত রাখা ভাল, তবে যারা ইতিমধ্যে আপনার জন্য ভুল করেছে তাদের উপরে একটি n00b শুনতে খারাপ। প্রত্যেকেরই কিছু সংশয় প্রয়োজন, যেমন আমরা নিজের এবং অন্যের প্রশ্ন জিজ্ঞাসা করি learn

27
সমস্যাটি খুব বেশি লোকেরা মনে করেন তারা "হারুন"
সিনকোটিমো

257

দুটি জিনিস:

  1. বিভিন্ন ব্যক্তিদের দ্বারা লিখিত কোড পড়ুন।
  2. অন্যান্য ব্যক্তিদের দ্বারা লিখিত কোডের জন্য ডকুমেন্টেশন লিখুন।

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


42
এবং কী করবেন না তা শেখার অন্যতম সেরা উপায় :)
AviD

9
তারা দেখতে পারেন কীভাবে তারা কিছু করেন। তারা কি আপনার চেয়ে ভাল উপায়ে এটি করতে পারে?

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

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

তাই সত্য, এটি দীর্ঘ সময়ের জন্য আমার কাজের সবচেয়ে কঠিন অংশ ছিল।

199

নিয়মিত জিমে হিট করুন।

গুরুতরভাবে, যখন আমি আকারে থাকি তখন আমার মস্তিষ্ক পুরোপুরি আরও ভাল কাজ করে। সমস্যাগুলি সহজ এবং কম অভিভূত হয়ে ওঠে, বোকা বানানো কোনও প্রলোভনের খুব কম হয় না, এবং ধাপে ধাপে জিনিসগুলির মাধ্যমে কাজ করা এমন একটি কঠিন কাজ বলে মনে হয় না।


30
বেশিরভাগ লোক নিয়মিত কোনও ধরণের ব্যায়াম বা এমনকি প্রসারিত করে না এমন দুঃখজনক সত্য আজকের বিশ্বে একটি বিশাল সমস্যা।
স্নিগ্ধতা

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

1
হ্যাঁ এটাই আজ বড় সমস্যা। আমাদের কাছে বিশেষত পাকিস্তানে সময় নেই যেখানে কাজের সময় অনেক বেশি
maz3tt

2
আরও অনুশীলন পেতে আমার কাছে একটি অনুস্মারক হিসাবে +1 ।
সিঙ্গেলাইজেশন ইলিমিনেশন

আমি দেখতে পেয়েছি যে একটি খেলা একটি দুর্দান্ত অনুপ্রেরণা - আমার কাছে এটি বাস্কেটবল।
আদেল

181

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


4
আমি রাজী. কোনও প্রকল্পে আমার হাত নষ্ট করা সম্ভবত আমার উন্নতিতে সবচেয়ে বড় অবদানকারী। ; )
মাইক গ্রেস

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

চ্যালেঞ্জিং এবং করণীয়মূলক প্রকল্পগুলি নির্বাচন করা। আমি মনে করি আপনার আরামের অঞ্চলের বাইরে কাটিয়ে উঠার লড়াই সত্যিই আপনার দক্ষতার গতি বাড়িয়েছে। তারা চাঁদে যায়নি কারণ এটি সহজ ছিল।
কিম জং উু

172

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


1
আমি এটির জন্য নিশ্চয়তা দিতে পারি

1
বিশ্ববিদ্যালয়ের একজন প্রশিক্ষক আমাকে উদ্বোধনের বিষয়ে বলেছিলেন যখন আমি তখনও ছাত্র ছিলাম। আমি স্নাতক হওয়ার পরে প্রায় এক বছর (পার্ট টাইম) থাকলাম।
বিল করুন

29
যেমন ডগলাস অ্যাডামস "ডার্ক জেন্টলির হলিস্টিক ডিটেকটিভ এজেন্সি" তে লিখেছেন: "সর্বোত্তম উপায় হ'ল এটি অন্য কাউকে বোঝানোর চেষ্টা করা। যা আপনাকে এটি মনে মনে বাছাই করতে বাধ্য করে। এবং আরও শিথিল ও আপনার শিষ্য, আরও আপনাকে জিনিসগুলি আরও এবং আরও সাধারণ ধারণার মধ্যে ভেঙে ফেলতে হবে। "

2
খুব সত্য। ফটোগ্রাফি শেখানো আমাকে আরও ভাল ফটোগ্রাফার করে তুলেছিল। কোনও কোডারের বেশি নয় :(
সিএডি

9
মিউচুয়ালি ইন্ড ফিন্ট, এবং হোমস ডাম ডসেন্ট ডিস্কান্ট - সেনেকা

135
  1. আমি "প্রতি বছর একটি প্রোগ্রামিং ভাষা শিখি" সিস্টেমের একটি বড় অনুরাগী। এক বছর আপনাকে "ঠিক আছে, সিনট্যাক্সটি জানি, তাই এখন ভাষাটি" জানি, এবং আপনাকে কিছুটা দূরে যেতে এবং সেই ভাষাতে কী উপকারী তা বুঝতে এবং বাধ্যতামূলক একটি স্টাইলে প্রোগ্রাম করার জন্য আপনাকে যথেষ্ট সময় দেয় সেই ভাষাটি (যার অর্থ, আপনি রুবি সিনট্যাক্স ব্যবহার করে জাভা অ্যাপ্লিকেশনগুলি লেখার শেষ করবেন না)। প্রতিটি ভাষা আপনার প্রোগ্রামিং সম্পর্কে চিন্তাভাবনার পদ্ধতি বদলাবে- আমি কীভাবে পুনরাবৃত্তিটি ব্যবহার করতে হবে তা জানতাম, তবে প্রোলোগের উপর ক্লাস না করা পর্যন্ত পুনরাবৃত্তির চিন্তাভাবনা ঘটেনি (আমি ভাবছি এমএল এর মতো কার্যকরী ভাষার একই প্রভাব থাকবে)।

  2. একটি পোষা প্রকল্প শুরু করুন। ভাল পোষা প্রজেক্টের জন্য আমার ব্যক্তিগত সমীকরণটি হ'ল এমন কিছু যা আপনার সাথে অভিজ্ঞতা রয়েছে এমন কিছু যা আপনি যা করেন না = অ্যাপটি আপনাকে দরকারী বলে মনে করেন। উদাহরণস্বরূপ, মাইগ্র্রাটর (আমার নিজস্ব ক্যাফিনেটেড-উইকএন্ড-চালু-চলমান প্রকল্প) "আমি জানি সি # জানি, তবে আমি কখনও কোনও ওয়েব এপিআইয়ের সাথে কোড করি নি ed এটি ঠিক তত সহজেই হতে পারে "আমি আগে ওয়েব এপিআইয়ের বিপক্ষে কোডিং করেছি, তবে আমি সি # জানি না"

আপনার পোষা প্রাণীর প্রকল্প প্রকাশ করা নিজের মধ্যে একটি আশ্চর্যজনক শিক্ষামূলক অভিজ্ঞতা। হঠাৎ করে সমস্ত জিনিস বাস্তবিকভাবে কেউ শেখায় না তবে প্রত্যেকেরই জানা থাকা উচিত (আমার জন্য এটি আপনার নিজের পরীক্ষা পদ্ধতি স্থাপন করছিল, সংস্করণ নিয়ন্ত্রণ সিস্টেমের সর্বাধিক সন্ধান করছিল, যখন অন্য কেউ আপনার সময়সীমা নির্ধারণ না করে তখন নিজেকে কীভাবে গতিময় করা যায়, কীভাবে আপনার সাথে যোগাযোগ করা যায়) ব্যবহারকারীরা এবং কীভাবে জানতে হবে যে অনুরোধগুলির বৈশিষ্ট্যগুলিতে "না" বলার জন্য), সমস্ত স্টাফ পৃষ্ঠের বুদবুদ হয়ে যায় এবং আপনাকে এমন একটি স্তরে স্বশিক্ষিত করতে বাধ্য করে - কমপক্ষে জাজনে অলসভাবে ফ্লেয়ারওয়ারগুলি পড়ে না the "foo" বনাম "বার" করার কাজগুলির উপায় / বিষয়গুলি।

এই দুটি জিনিস করা বর্ণালী উভয় প্রান্ত জুড়ে। একটি নতুন ভাষা শেখা আপনাকে আরও ভাল কোডার করে তুলবে। পোষা প্রাণী প্রকল্প আপনাকে আরও উন্নত বিকাশকারী করে তুলবে: পি


আমি কেবল একমত হতে পারি; "পূর্বের অজানা ভাষায় পোষা

অর্ধেকভাবে পরিচিত কিছু শিখতে খুব ভাল পরামর্শ।

দুর্দান্ত পরামর্শ "এমন কিছু যা আপনার না করার সাথে অভিজ্ঞতা রয়েছে"! ধন্যবাদ
sica07

আমার এখন একটি পোষা প্রাণীর দরকার
আদেল

118

নিজেকে সমাবেশ করতে শিখিয়েছি। আমি 13 বছর বয়সে এটি কি পুরানো 6502 চিপটিতে রেখেছিলাম? 14? অনেক আগে তবে আমি এমন কিছু ভাবতে পারি না যা বিট স্তরে নেমে যাওয়ার চেয়ে আপনার বিকাশের উন্নতি করবে।

অ্যাসেম্বলি শেখা আপনাকে কম্পিউটারকে নীচের স্তরের স্তরে কীভাবে 'চিন্তা' করে তার অন্তর্দৃষ্টি দেয় এবং এই স্তরের কমনীয়তা আশ্চর্যজনক ... এখানে কোনও নষ্ট গতি নেই, ডেটা 'ডিসপোজিং' নেই। এই স্তরে বিকাশ আপনাকে দক্ষতা শিখাবে এবং আপনার সমালোচনামূলক চিন্তাভাবনা এবং যুক্তি দক্ষতা অর্জন করবে। এটি মোটামুটি দ্রুত আপনার যে কোনও ঝাঁকুনী অভ্যাসকে নিরাময় করবে!

65xx চিপটিতে তিনটি নিবন্ধ (সংযোজক, এক্স এবং ওয়াই) ছিল এবং গুণ বা বিভাজনের জন্য কোনও মেশিন স্তরের নির্দেশনা নেই। আমার মনে আছে যুদ্ধের ক্ষয়ক্ষতি গণনা করার জন্য, বইটি দেখে এবং হঠাৎ বুঝতে পেরেছিলাম যে আমার নিজের গণিতের পাঠাগারটি লিখতে হবে a 'বিভাজন' এবং 'দশমিক স্থানগুলি' আসলে কী বোঝায় তা বোঝার চেষ্টা করে আমার নোটবুক জুড়ে 1 এবং 0 এর স্ক্রাবলিং করে কয়েক সপ্তাহ ব্যয় করেছেন।

আমি তখন থেকে সি ++, পাস্কেল,। নেট, আরও অনেকগুলি অধ্যয়ন করেছি ... তবে তাদের কেউই আমাকে ততটা শেখায়নি, আমাকে ততটা আগ্রহী করেছে, বা আমার পুরানো পণ্যটিতে যে সমাবেশ করেছে তা 'বাহ' ধারনা দিয়ে আমাকে ছেড়ে যায়নি ।


16
আমি আপনাকে কেবল দুর্দান্ত স্মৃতি ফিরিয়ে আনার জন্য ভোট দিতে চাই! এমনকি আমি কিছুটা ছিঁড়েছি :)
চার্লি ফুলগুলি

3
আমি এখনও মানসিকভাবে সি / সি ++ কে 68 কে সমাবেশ ভাষায় অনুবাদ করি। এটি আশ্চর্যজনক যে কীভাবে এটি আপনাকে কোনও প্ল্যাটফর্মের জন্য দক্ষ কোড লিখতে সহায়তা করে।
বব মারফি

1
আহ, 6502, দুর্দান্ত স্মৃতি ফিরিয়ে এনেছে। এই চিপে এসেম্বলারের সাথে আমি অনেক কিছু শিখেছি।

5
প্রোগ্রামিংয়ের প্রতিটি শিক্ষার্থীর তাদের শিক্ষার শুরুতে এসেম্বলারের সাথে গভীরতার এক্সপোজার থাকা উচিত!

2
আমি কিশোর বয়সে একই কাজটি করেছি। এটি সত্যই শিখিয়েছিল যে কম্পিউটারগুলি কীভাবে কাজ করে, তার চেয়ে বেশি উচ্চ স্তরের ভাষা কখনও করতে পারে না।
সিএডি

110

আমার লেখা পুরানো জিনিসগুলির দিকে ফিরে তাকানো এবং বুঝতে পেরেছিলাম যে সেগুলি কতটা খারাপ।


আমি দ্বিতীয় যে ... আমি আমার পুরানো কিছু জিনিস খুব কমই পড়তে পারি।
Unkwntech

28
আমি যখন আমার পুরানো স্টাফের উপরে যাই তখন আমি পুরো ফাইলটি মুছতে প্রায় অপ্রতিরোধ্য আবেদনগুলি পাই। কখনও কখনও পুরো ডিরেক্টরি।
ক্রিস্টোফার মাহান

উদ্দেশ্যমূলকতার জন্য +1। আপনার পুরানো কোডটি সন্ধান করা আপনাকে কীভাবে উন্নতি করতে হবে তা কেবল আপনাকে উন্নত করতে হবে না এবং কীভাবে - বা বিপরীতে, যদি আপনি না করেন।

আমি এটি করেছি - আমি ভিবি 6 এ এই পুরো স্ক্রিপ্ট দোভাষী লিখেছি, আমি এটি দুই বছরেরও বেশি সময় ধরে লিখেছি; এটি উইন্ডো তৈরি করতে পারে, তাদের ইভেন্টগুলি পরিচালনা করতে পারে ইত্যাদি It এটি এত বড় এবং নিয়ন্ত্রণের বাইরে চলে গেছে যে আমি সবকিছু না ভেঙে আর এটিকে যুক্ত করতে পারি না। প্রোগ্রামিং সম্পর্কে বইয়ের জন্য প্রোগ্রামিং ছেড়ে দেওয়ার আগে আমি এই শেষ জিনিসটি লিখেছিলাম। এখন আমি অনেক ভালো আছি রাম রাম । সেই দানব প্রকল্পটি আবার পড়ার ফলে আমি বুঝতে পারি যে আমি কতদূর এসেছি
কারসন মায়ার্স

3
@ ক্রিস্টোফার মাহান: এবং সত্যিই খারাপ সময়ে পুরো ভলিউম।
থানাটোস

93

পড়া

  • বই, কেবল ওয়েবসাইট নয়
  • স্ব-উন্নতির জন্য, কেবল সর্বশেষ প্রকল্পের জন্য নয়
  • আপনার বাণিজ্য উন্নত করার বিষয়ে, কেবলমাত্র সর্বশেষ প্রযুক্তি সম্পর্কে নয়
  • কোড পড়ুন, শুধু আপনি কাজ করছেন না।

শুধু পড়ার ক্ষুধা বিকাশ করুন।


2
প্লাস, ফ্রিকিন ', ১। আমি এই পছন্দটি কোথায় তা ভাবতে শুরু করেছিলাম।
থানাটোস

87

প্রোগ্রামিং।

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


8
আপনি যদি কোনও কিছুতে উন্নত হতে চান তবে এটি করার চেয়ে ভাল আর কিছু নেই।
জেফ সিভার

4
+1 - এটি আমাকে ফররেস্টার
সন্ধানের

2
অন্য কোন উত্তর নেই। আপনি আসলেই বলতে পারবেন না যে আপনি কী করছেন তা আপনি জানেন না যতক্ষণ না আপনি একটি অপ্রয়োজনীয় কোডের গাদা লিখে রেখেছেন এবং ব্যবসার লোকদের + গ্রাহকদের সাথে কয়েকটি পণ্য পুনরাবৃত্তির মাধ্যমে এটি আটকেছেন। আপনার কোডটি নতুন প্রয়োজনীয়তা মেটাতে পরিবর্তন করার সময় না আসা পর্যন্ত আপনি / সত্যই জানেন না।
blucz

1
আমি অবশ্যই আমার প্রোগ্রামিংয়ের উন্নতির জন্য সবচেয়ে ভাল কাজটি করছিলাম getting
ম্যাট এলেন

1
আমার অনুমান যে প্রশ্ন "প্রোগ্রামিং ব্যতীত" উহ্য ... হয়
UncleZeiv

81

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

এবং দ্বিতীয় সবচেয়ে গুরুত্বপূর্ণ বিষয়, আপনি কী করছেন, আপনি এটি কেন করছেন এবং কীভাবে আপনি এটি আরও ভাল করতে পারেন তা চিন্তা করুন। আগের প্রকল্পগুলির সাথে একই জিনিস। আপনি কী করেছেন এবং এখন কীভাবে আপনি এটি অন্যভাবে করতে পারেন তা ফিরে দেখুন। কী কী আরও ভাল করা যেতে পারে, বা যেখানে আপনি এখনও এটিতে উন্নতি করতে পারেন তা চিন্তা করুন।

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


7
এবং তার সম্ভবত দক্ষতা কম রয়েছে কারণ তার কিছু জ্ঞান অপ্রচলিত হয়ে গেছে ..

72

অনেকে কোড কোড লেখার পরামর্শ দিয়েছেন। আমার বলতে হবে যে অন্য লোকের কোড পড়া অনেক বেশি উপকারী।


11
দুজনের মিশ্রণ আসলে আমার পক্ষে সবচেয়ে ভাল কাজ করে; অন্যান্য ব্যক্তির কোড পড়া এবং এটি আরও পাঠযোগ্য করে তুলতে এটিতে

অবশ্যই ভাল কোড পড়া হচ্ছে ... এবং এটি বুঝতে। এবং এটিকে সংশোধন করা, বা এর জন্য পরীক্ষা লিখতে।

4
পঠন কোডটি আন্তঃসংযোগমূলক, তবে যতক্ষণ না আপনি বাস্তবে এটি না করেন ততক্ষণ এটি আপনার ত্বকের নিচে পড়ে না।

এটি শিখতে আপনার অবশ্যই এটি করা উচিত। এটি বাইসাইকেল চালানোর মতো ...

70

খুব বৈচিত্রময় এবং মতামতযুক্ত লোকদের সাথে জুড়ি-প্রোগ্রামযুক্ত


আমার কাছে জুটি প্রোগ্রামিংয়ের একমাত্র "অভিজ্ঞতা" হ'ল সময়টি সহকর্মী সহকর্মীদের সাহায্য করার জন্য আমার আছে। আমার সাথে আরও একজন ব্যক্তি উপস্থিত থাকলে আমি যে সমস্যার মুখোমুখি হচ্ছি এবং কীভাবে সেগুলি সমাধান করব তা নিয়ে আলোচনা করার জন্য আমি তখন অনেক বেশি আনন্দিত প্রোগ্রাম করি।
mhitza

67

প্রোগ্রামার হিসাবে আমাকে যে প্রাথমিক জিনিসগুলি সহায়তা করেছিল:

  • টাচ টাইপিং শিখেছি।
  • লাজুকতা কাটিয়ে উঠতে এবং প্রশ্ন জিজ্ঞাসা করতে শিখেছি।

প্রোগ্রামার জন্য টাইপ করা অপরিহার্য। প্রত্যেকেরই একজন "প্রোগ্রামার" সহকর্মী রয়েছেন যিনি ঠিক দুটি আঙুল ব্যবহার করে টাইপ করেছিলেন এবং সবকিছুর জন্য কীবোর্ডটি দেখতে হয়েছিল। মজা না. ছোঁয়া টাইপ শেখা একটি প্রোগ্রামার হিসাবে আপনার উত্পাদনশীলতা একটি বিশাল উত্সাহ দেয়।

এবং যদি আপনি জিজ্ঞাসা না করেন তবে কেউ আপনাকে বলবে না।


15
টাচ টাইপিং সবচেয়ে গুরুত্বপূর্ণ দক্ষতা। প্রোগ্রামিংয়ের সবচেয়ে বড় অপরাধগুলি যারা কয়েকটি কী-স্ট্রোক সংরক্ষণের চেষ্টা করছে তাদের দ্বারা সংঘটিত হয়েছিল।

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

2
আমি দেখেছি লোকেরা 2 টি চরিত্রের কমান্ডটি পুনরুদ্ধার করতে 15 টি তীর মেরেছে। বেশ দুঃখজনক. এটি আইডিইবিহীন কিছু বাচ্চাদের মতো ... সম্পূর্ণ অযোগ্য।

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

2
হাতের অবস্থানগুলি গুরুত্বপূর্ণ নয় - গুরুত্বপূর্ণ জিনিসটি আপনি দেখতে না পেয়েই টাইপ করতে পারেন। আমার ল্যাপটপে আমি আমার কব্জি বিশ্রাম করি না।

56

ওপেন-সোর্স প্রকল্পগুলিতে অংশ নেওয়া / অংশ নেওয়া আমার পক্ষে সবচেয়ে বড় বিষয় ছিল।


53

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

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

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


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

48

শিক্ষিত প্রকল্প


হ্যাঁ, আমার জন্য এটিও বড় ছিল। স্পর্শ টাইপিং এবং জুড়ি প্রোগ্রামিং ছিল তাৎপর্যপূর্ণ।

46

কোড লিখন এবং এটি প্রচুর।


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

কোড পড়া এবং এর প্রচুর পরিমাণে।
স্টিফান

3
প্রচুর কোড পড়া এবং লেখার জন্য ... মুক্ত উত্স আমাদের কাছে এমন একটি বর;)
ওদেড

45

নিয়মিত অভিব্যক্তি শিখছি।


এই মাত্র চার মাস আগে যখন আমি নিজেকে পার্ল শেখাতে শুরু করি! আমার সাধারণ আকাশে ভিআইএম এবং ইউনিক্স ব্যবহারের ক্ষমতাটি ছুঁড়েছে! অ্যামেজিং।
ষাট ফুটারসুডে

নিয়মিত প্রকাশগুলি কেবল কার্যকর নয়, এগুলি আপনাকে অন্যভাবে ভাবতেও সহায়তা করে।
টিখন জেলভিস

+1 টি। সম্পূর্ণ একমত. আমি প্রায়শই ভিআই, সেড বা গ্রেপ-তে বেশ কয়েকটি মৌলিক কাজ করে মানুষকে অবাক করে দিয়ে অবাক হয়েছি।

39

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

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

2
@hstoerr - প্রতিযোগীদের তাদের কোডটি পড়া কঠিন করার জন্য পুরস্কৃত করা হয়েছে (তাদের সমাধান চ্যালেঞ্জ করা আরও কঠিন)
শেন ফুলার

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

2
আপনি কতটা উন্নত হতে পারেন তা নিজেকে দেখানোর উপায় টপকোডার।

38

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


36

আমার শেষ কাজ ছেড়ে দাও।


2
আমিও! (আরও কিছু চর দরকার ...)

6
আপনি যদি আমাদের কেন তা বলবেন তবে এটি একটি উত্তরও হতে পারে। ;-)

2
ইনহাউস ফ্রেমওয়ার্ক (ইজেবি 2 এর উপর ভিত্তি করে) তৈরি করা সহায়তামূলক প্রকল্পটি আমার মজাদার ধারণা ছিল না। কোনও নতুন জিনিস নেই, কেবল পুরানো বাজে কথা। এবং নতুন কাজের ক্ষেত্রে দৃষ্টিভঙ্গি আরও ভাল নয় are :(
mihn

ওখানে এসেছি।
এপ্রিল 610

+1 সৌভাগ্য এমন একটি কাজ অবতরণ করুন যা কোনও শেষের নয়।
টোমেক স্জপাকোভিজ

29

আমি মনে করি আপনি কি করছেন তা ক্রমাগত প্রশ্ন করা সবচেয়ে বড় কাজ। কখনই ভাববেন না যে আপনার কোডটি নিখুঁত, সর্বদা এটির উন্নতি করার চেষ্টা করুন।

দেখে মনে হচ্ছে আমার কোডটি নিখুঁত বলে আমি যখন 2 বা 3 বার করেছি তখন বুঝতে পেরেছিলাম যে আমার অনেক দীর্ঘ পথ যেতে হবে।

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

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


29

তারা বলে যে 70% ভাল কোড ত্রুটি পরীক্ষা করা এবং পরিচালনা করা। আমি যখন সেভাবে প্রোগ্রামিং শুরু করি তখন আমার কোডটি আরও ভাল got কী কী ভুল হতে পারে সে সম্পর্কে চিন্তা করে এবং এখনই এটিকে পরিচালনা করে বিশাল পার্থক্য তৈরি করেছে। দেখে মনে হচ্ছে যে সমস্ত পরীক্ষা করা কেবল কোডটি পাওয়ার এবং চালানোর পথে চলছে তবে এটি 2 থেকে 4 এর একটি ফ্যাক্টরের মাধ্যমে শেষ হতে শুরু করে।

এই লোকগুলি কেবল "তারা" এবং "তারা" কোথায় থাকে?


28

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

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

স্বয়ংক্রিয়ভাবে, দৃষ্টিভঙ্গি " যদি আমি এটি ব্যাখ্যা করতে না পারি, আমি এটি লিখি না " খারাপ কোড ফিল্টার করে এবং বিপরীতভাবে আমি যখন কোনও জিনিস সঠিকভাবে ডকুমেন্ট করতে জানি, এটি কার্যকর করা সহজ এবং পরিষ্কার হয়ে যায়।


28

আপনি যা শিখেন তা নিয়মিত শিখুন এবং অনুশীলন করুন।

উপায়ে:

  1. ব্যক্তিগত প্রকল্প: যখনই আমি প্রোগ্রামিং শুরু করি তখন থেকেই আমি ব্যক্তিগত প্রকল্পগুলি করে চলেছি। ছোট গেমস থেকে ইমেজ প্রসেসিং, স্টেগনোগ্রাফি, ফাইল টাইপ স্পেসিফিকেশন বাস্তবায়ন, স্ক্র্যাচ থেকে বিভিন্ন প্রোটোকল বাস্তবায়ন, বা সময়ের সাথে সাথে বিভিন্ন প্রোগ্রাম বাস্তবায়ন করা।

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


10
বই উল্লেখ করার জন্য +1। এগুলি সমস্ত কিছু ভুল উপায়ে করতে ব্যয় করা হলে অনেক অভিজ্ঞতার পক্ষে মূল্য নেই।
এমবিলার্ড

27

এটি কোনও নতুন প্রযুক্তি শেখার ক্ষেত্রে আমার ক্রনিকোলজিকাল ক্রম:

  1. নিয়মিত পড়া ভাল ব্লগগুলি (অ্যাটউড, মার্টিন জালিয়া, ইত্যাদি), রাখুন আপ-টু-ডেট প্রযুক্তি সংবাদ সঙ্গে, আকর্ষণীয় নতুন প্রযুক্তি সম্পর্কে কাপড় অনুসরণ করুন। এই পদক্ষেপগুলি আমাকে সিদ্ধান্ত নিতে দেয় যে আমি আরও অন্বেষণে আকর্ষণীয় কিছু পাই কিনা।

  2. আপনার স্তরের জন্য শিখতে সঠিক বই বা অন্য কোনও সংস্থান পড়ুন (যেমন আপনি যদি ডিজাইনের ধরণগুলি শিখতে চান তবে আমি 'হেড ফার্স্ট ডিজাইন প্যাটার্নস' প্রস্তাব করব)। বইয়ের জন্যও আমার নির্দিষ্ট পছন্দ রয়েছে

  3. আমি যে জিনিস শিখেছি তা ব্যবহার করে একটি খেলনা প্রকল্প বা দু'টি রোল আউট করুন । আমি প্রকল্পের দরকারীতা সম্পর্কে চিন্তা করবেন না। আমার উদ্দেশ্যটি কেবল আমার শিক্ষাকে কাজে লাগানো। (যেমন ওওপি-র জন্য একটি ক্যালকুলেটর প্রকল্প ভাল হবে)

  4. আমি দেখতে চাই যে আমি কাজের জায়গায় জিনিসটি ব্যবহার করতে পারি কিনা । (উদাহরণস্বরূপ, যদিও আমরা কর্মক্ষেত্রে subversion ব্যবহার করি না, আমি এটিকে আমার স্থানীয় সংগ্রহস্থল হিসাবে ব্যবহার করি, আমি রুবিকে এমন একটি কাজের জন্য ব্যবহার করি যা অন্যথায় খুব একঘেয়েমিযুক্ত এবং সময়সাপেক্ষ হবে)

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


24

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

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