سلام
لطف دارید، خواهش میکنم 
مجدد عرض میکنم، نظرهای بنده تنها حاصل تجربه شخصیام هست و لزوما بهترین پیشنهاد نیست.
من با زبان #C کار میکنم، اون هم General purpose هست، فکر نمیکنم مشکلی ایجاد کنه، در کل انتخاب تکنولوژی یا ابزار به این برمیگرده که شما چه هدف و علاقهای دارین و بنا به اون علاقهتون انتخابش کنید. مثلا من اگه بخوام در حوزه هوش مصنوعی کار کنم احتمالا انتخابهای بهتری از #C خواهم داشت اما با هدفی که الان دارم یکی از انتخابهای مناسبم هست.
در مورد Donation فکر کردم سایتهای Crowdfunding منظورتون بود. برای مدل درآمدی Free خوبه ویدیو آقای غانم زاده(https://youtu.be/fFSny3JeaQ0?t=17m22s) رو مشاهده کنید، اما جدا از جزئیات Business Model سایتتون، این مسائل بیشتر مربوط به حوزه Business میشه، ما برنامهنویسها چون میتونیم برنامهها رو تولید کنیم، دوست داریم کسب و کار نرمافزاری یا استارتاپی راه اندازی کنیم اما برای انجام این کار نیاز به تخصص مربوط به خودش هست، هرچند هرکاری رو با کسب دانش میشه انجام داد. در این مورد Referenceای رو پیشنهاد ندم بهتره.
در لینک پادکستی که فرستادم، در برخی از پادکستها از مهمان برنامه در مورد Roadmap سوال شده بود.
در پایین پیشنهاد خودم رو میگم، اما توجه کنید بنده فقط چند ماه تدریس کردم و تجربه محدودی در این مورد دارم، بهتره با برنامهنویسان دیگه هم مشورت کنید.
روال کار به این صورته که من تصور میکنم نهایتا قصد دارم چه position شغلی رو داشته باشم یا چه نوع برنامهنویسی بشم. بعد از اون نیازمندیهاش رو بررسی میکنم و مطالب رو به 2 یا 3 دسته، تقسیم میکنم. دسته اول مطالبی که کیفیت کار من به شدت به اونها وابستهست، دسته دوم نیاز هست بدونم اما یا کارم باهاشون خیلی کمه یا جزو وظایف شغلی من نخواهد بود. دسته سوم، تنها باید اطلاعات کلی در موردشون داشته باشم تا کارم بهتر راه بیافته و اصلا نیازی به عمیق شدن در اون مطالب نیست.
خب فرض میکنیم من میخوام برنامهنویس Asp.net MVC بشم.
پس من یه Back-end کار خواهمشد که معمولا قسمت منطق پروژه (کد Logic) بهش محول میشه، برای دسته اول نیاز به الگوریتمنویسی خوب، یادگیری تکنولوژی Asp.net MVC و شناخت نسبتا بالایی از زبان #C دارم. همینطور مسائل پایهای مربوط به دیتابیس رو باید بدونم اما چیزی نیست که هر روز باهاش سر و کار داشته باشم(دسته دوم). در نهایت احتمالا اصلا نیازی به عمیق شدن در قسمت Front (Html, Css) سایت نیست، اما درک بهترش کارم رو سادهتر میکنه(دسته سوم).
حالا با این شرایط مطالب زیر رو یاد میگیرم (من از ابتدا مینویسم و فرض میکنم چیزی نمیدونم، طبیعتا هر مرحلهای رو میدونید به مرحلهی بعدیش برید):
- الگوریتم نویسی و فلوچارت (احتمالا زبان C یا ++C رو برای یادگیری انتخاب میکنم)
- مبانی و درک خوبی از #C (مسائل مربوط به OOP در این قسمت میان)
- مبانی دیتابیس (احتمالا Microsoft SQL server رو انتخاب کنم، T-Sql، نرمال سازی دیتابیس و ...)
- HTML، CSS و JavaScript (مقدماتی) (مطالعه در مورد Bootstrap در این قسمت میتونه مفید باشه)
- Asp.net MVC
در نهایت با مطالبی که یاد گرفتم یه CMS یا فروشگاه ساده درست میکنم (ویدیو آموزشیهایی هم در این مورد وجود دارن، اما اگر زمان بیشتری داشته باشم خودم به تنهایی پروژه رو درست میکنم تا طریقه Search کردن و پیدا کردن سایتهای مناسب و یه سری ریزهکاریها دستم بیاد)
در این مرحله شغلی پیدا میکنم و ادامه راه (مباحث بعدی که در کامنتتون فرمودید) و مطالب پیشرفتهتر رو بعد از زمان کاری برای یادگیریشون وقت میذارم.
سعی کنید شرکت خوبی رو برای اولین شرکتتون انتخاب کنید. شرکت اول در ادامه کارتون تاثیرگذار هست (محیط شرکت، مدیر شما، دانش و مدل کاریشون اهمیت بالایی داره)
امیدوارم مفید بوده باشه
موفق باشید