<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های Masood</title>
        <link>https://virgool.io/feed/@masoodsadri</link>
        <description>مدرس و توسعه دهنده نرم افزار</description>
        <language>fa</language>
        <pubDate>2026-06-07 09:47:14</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/9272/avatar/cCtpjE.png?height=120&amp;width=120</url>
            <title>Masood</title>
            <link>https://virgool.io/@masoodsadri</link>
        </image>

                    <item>
                <title>برنامه نویسی و بازار کار</title>
                <link>https://virgool.io/@masoodsadri/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D9%88-%D8%A8%D8%A7%D8%B2%D8%A7%D8%B1-%DA%A9%D8%A7%D8%B1-znos4tnwckun</link>
                <description>قطعا یکی از مهم‌ترین مراحل در فرآیند یادگیری برنامه نویسی، کسب درآمد و ورود به بازار کار این حوزه است. می‌توان گفت این مرحله شروع مسیر حرفه‌ای برای یک برنامه نویس است. در این مطلب چند نکته مهم برای موفقیت بیشتر در بازار کار برنامه نویسی را بررسی می‌کنیم.دانش و تسلط کافیخیلی وقت‌ها فکر می‌کنیم بعضی مفاهیم را دقیق یاد گرفته‌ایم. در صورتی که ممکن است اینطور نباشد. این را زمانی که با چالش‌های برنامه نویسی مواجه می‌شویم بهتر درک می‌کنیم.پس باید سعی کنیم چالش‌های بیشتری انجام دهیم. تمرین‌هایی که جدا از یک تکنولوژی خاص، باعث افزایش مهارت حل مسئله در برنامه نویسی هستند.همیشه کسانی که &quot;برنامه نویسی&quot; را بهتر درک کردند، یک قدم جلوتر هستند از کسانی که بیشتر روی کتابخانه‌ها یا چهارچوب‌ها تمرکز می‌کنند.انتخاب فیلد تخصصیامتحان کردن زبان‌ها و تکنولوژی‌های مختلف در زمان شروع یادگیری می‌تواند روش خوبی باشد برای این که علاقه واقعی خودمان را پیدا کنیم.اما شاخه به شاخه شدن در ادامه باعث می‌شود تا نتوانیم در یک زمینه خاص دانش خودمان را عمیق کنیم.پس باید یک فیلد تخصصی اصلی داشته باشیم. اگر انتخاب فیلد بر اساس &quot;علاقه&quot; و &quot;بازار کار&quot; باشد، قطعا پیشرفت می‌کنیم.داشتن نمونه کاراگر تا الان هیچ پروژه تجاری انجام ندادید اصلا مهم نیست. خودتان یک پروژه کاربردی طراحی کنید و سعی کنید مفاهیمی که یاد می‌گیرید را با پیاده سازی آن پروژه بهتر درک کنید.موضوع پروژه اهمیت زیادی ندارد. می‌تواند یک فروشگاه ساده باشد یا یک نرم افزار حسابداری شخصی که شما هر بار امکانات بیشتری به آن اضافه می‌کنید و تلاش می‌کنید تا بهینه‌تر شود.ارایه نمونه کارهانکته مهمی که باید به آن توجه کنیم این است که ما &quot;برنامه نویس&quot; هستیم. یعنی یک متخصص که نرم افزار می‌سازد. پس باید نمونه‌ کارهایی که داریم را به درستی ارایه کنیم.یک وب‌سایت شخصی داشته باشید یا یک وبلاگ. در مورد نرم افزارهایی که توسعه می‌دهید بنویسید. لینک‌های دمو و گیت‌هاب را منتشر کنید تا کارهای شما دقیق‌تر بررسی شوند.نکته پایانیدر حال حاضر بیشتر شرکت‌ها به صورت ریموت با برنامه نویس‌ها همکاری می‌کنند. همین طور بازار کار فریلنسینگ رو به رشد است.پس کار شما وابسته به شهری که زندگی می‌کنید نیست. تنها چیزی که اهمیت دارد &quot;دانش&quot; و &quot;تعهد کاری&quot; شماست.برنامه نویسی نقطه پایان ندارد که بخواهیم به آن برسیم و حرفه‌ای شویم. یک برنامه نویس حرفه‌ای کسی است که خودش را به روز نگه می‌دارد و ارزش تخصصی که برای آن زحمت کشیده را می‌داند.</description>
                <category>Masood</category>
                <author>Masood</author>
                <pubDate>Sat, 02 Jan 2021 21:21:44 +0330</pubDate>
            </item>
                    <item>
                <title>یادگیری برنامه نویسی</title>
                <link>https://virgool.io/coderlife/%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-nzstaiw3pbyv</link>
                <description>یادگیری برنامه نویسی برای یک توسعه دهنده هیچ وقت نباید متوقف شود. واقعیت این است که ذات کار برنامه نویسی به روز بودن و حل کردن چالش‌های مختلف است. زمانی که کتابخانه‌ها و چهارچوب‌ها، همین طور زبان‌های برنامه نویسی دائم در حال توسعه و به روز رسانی هستند، یک برنامه نویس برای پیشرفت باید خودش را با این مسیر همسو کند.قطعا این یادگیری همیشه ادامه خواهد داشت. پس نباید در این مسیر به دنبال رسیدن به یک نقطه خاص برای حرفه‌ای بودن باشیم. من فکر می‌کنم تعریف حرفه‌ای بودن در این حوزه به معنای داشتن دانش بیشتر نیست. یک برنامه نویس حرفه‌ای تفکر حرفه‌ای دارد. به این معنی که تلاش می‌کند مطالب به روز و کاربردی را یاد بگیرد و آنها را با دیگران تا حد امکان به اشتراک بگذارد.اما سوالی که شاید به عنوان یک توسعه دهنده زیاد به آن فکر کنیم این است که چطور می‌شود درست و منطقی یاد گرفت؟ یادگیری از کجا شروع می‌شود و چطور ادامه پیدا می‌کند؟ چه منابعی می‌توانند برای ما مناسب باشند؟ و در نهایت مهم‌ترین سوال، آیا من یک برنامه نویس هستم؟اجازه بدهید با آخرین سوال شروع کنیم. جنس کار برنامه نویسی، علاقه‌ است. علاقه خیلی زیاد به حل مسائل و دنیای تکنولوژی‌های مختلف. اگر شما به این موضوع علاقه دارید، پس برنامه نویس هستید. فکر نکنید باید دانش زیادی داشته باشید تا عنوان &quot;توسعه دهنده&quot; در کنار اسم‌تان باشد. این عناوین را کنار بگذارید. این مسیر برای شماست. فقط باید ادامه بدهید و هوشمندانه تلاش کنید.تلاش هوشمندانه بدون شک یکی از مهم‌ترین عوامل تاثیر گذار است. در مرحله اول باید تمام ابزارها را کنار بگذارید و فقط روی یادگیری برنامه نویسی و حل مسئله تمرکز کنید. برای خودتان اهداف کوتاه مدت تعیین کنید و بر اساس آنها برای تمام ساعت‌های روزهای هفته برنامه ریزی کنید. مفاهیمی مثل ساختمان داده‌ها و الگوریتم‌ها را درک کنید.مرحله بعد شروع یادگیری یک زبان برنامه نویسی رو به رشد است. دقت کنید که این زبان برنامه نویسی پایدار باشد، نه صرفا ترند روز. وب‌سایت‌های زیادی هستند که تحلیل‌های مختلف از روند محبوبیت و رشد زبان‌های برنامه نویسی نوشته‌اند. اما قبل از هر چیز باید با پلتفرم‌های مختلف آشنا شوید. وب، موبایل یا دسکتاپ. باید ببینید شما به کدام بیشتر علاقه دارید. برای هر پلتفرم می‌تواند چند زبان پایدار وجود داشته باشد. سراغ کتابخانه‌ها یا چهارچوب‌ها نروید. یکی از زبان‌ها را انتخاب کنید و دانش خود را در همان مسیر عمیق کنید. دستورات زبان‌های برنامه نویسی خیلی شبیه به هم هستند. پس اگر یکی را مسلط شوید، در صورت نیاز می‌توانید یادگیری زبان‌های دیگر را شروع کنید.نوع یادگیری هر شخص می‌تواند متفاوت از دیگری باشد. ممکن است کسی با مستندات یک تکنولوژی مفاهیم را بهتر درک کند، کسی با ویدیو آموزشی. این را متوجه بشوید که شما چطور بهتر یاد می‌گیرید. هیچ استانداردی برای همه وجود ندارد. زمان شما خیلی مهم است، پس منابعی را برای یادگیری انتخاب کنید که وقت کمتری از شما می‌گیرند.مرحله دوم یادگیری، توسعه پروژه واقعی است. این مرحله بسیار تاثیر گذار خواهد بود. اما در صورتی که مرحله قبل را به درستی طی کرده باشید. نیازی نیست وارد یک تیم یا شرکت شوید. برای خودتان یک مسئله تعریف کنید و برای آن راه‌ حل نرم افزاری با زبانی که به آن مسلط هستید ارائه کنید. ممکن است نرم افزار شما به دیگران هم کمک کند و این می‌تواند شروع یک مسیر حرفه‌ای برای شما باشد.مواجه شدن با مشکل و سوال پرسیدن یک موضوع بسیار عادی در برنامه نویسی است. وب‌سایت‌هایی مثل Stackoverflow برای همین منظور ساخته شده‌اند. پس تلاش کنید تا مشکل خود را با جست و جو در اینترنت و پرسیدن از برنامه نویس‌های باتجربه‌تر حل کنید. مطمئن باشید این چالش‌ها هیچ وقت متوقف نخواهند شد. چون اصل کار برنامه نویسی، حل کردن مسائل مختلف است.امیدوارم این مطلب برای شما مفید بوده باشد. اگر به حوزه برنامه نویسی علاقه دارید، پیشنهاد می‌کنم پادکست‌ها و ویدیوهای آموزشی وب‌سایت فرانت کست را دنبال کنید.</description>
                <category>Masood</category>
                <author>Masood</author>
                <pubDate>Sun, 06 Oct 2019 15:47:03 +0330</pubDate>
            </item>
                    <item>
                <title>چرا جاوااسکریپت را برای برنامه نویسی انتخاب کردم</title>
                <link>https://virgool.io/JavaScript8/%DA%86%D8%B1%D8%A7-%D8%AC%D8%A7%D9%88%D8%A7%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%D8%B1%D8%A7-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D8%A7%D9%86%D8%AA%D8%AE%D8%A7%D8%A8-%DA%A9%D8%B1%D8%AF%D9%85-rj6ludqoeeyi</link>
                <description> این نوشته تجربیات من در طول چند سال به عنوان توسعه دهنده هست. سعی کردم مراحل کاری و دلیل استفاده از تکنولوژی‌ها و زبان‌های مختلف رو توضیح بدم. امیدوارم برای کسانی که به حوزه برنامه نویسی علاقه دارن مفید باشه.یادم میاد اولین بار دوران مدرسه بود که با برنامه نویسی آشنا شدم. اون زمان مدرسه برای ما دوره‌های آموزشی زبان QBasic گذاشته بود. یه کارهایی باهاش انجام می‌دادیم ولی من در کل متوجه نبودم جریان چی هست. اما حس می‌کردم کاری هست که بهش علاقه دارم. تا بعدها در دانشگاه با زبان‌های C و C++ آشنا شدم. ترم‌های اول دانشگاه بود که علاقه من به برنامه نویسی بیشتر شد، با این که هیچ ایده‌ای از خود کار و آینده شغلی اون نداشتم .حدود سال نود و یک تصمیم گرفتم وارد بازار کار بشم. به کمک یکی از دوستان خوبم یادگیری زبان PHP رو شروع کردم و کمی بعد از اون Python. علاقه من به برنامه نویسی بیشتر شده بود اما توانایی زیادی برای توسعه نرم افزار نداشتم. همین باعث شد به عنوان فریلنسر مسیرم رو تغییر بدم به طراحی وب‌سایت.چند سالی به همین ترتیب گذشت. با دور شدن از برنامه نویسی، متوجه شدم یکی از سخت‌ترین کارها برای من طراحی وب‌سایت هست. واقعیتش هیچ وقت خودم رو در این راه موفق ندونستم. موارد کمی بود که کارفرما و من از نتیجه کار راضی باشیم. اما به خاطر بحث مالی این مسیر رو ادامه می‌دادم و هر روز کار برای من سخت‌تر می‌شد.تابستان سال نود و پنج بود که به طور اتفاقی وارد پروژه‌ای شدم که بیشتر قسمت‌های اون با جاوااسکریپت توسعه داده شده بود. پروژه‌ی خیلی خوبی بود و نمی‌خواستم از دست بدم. فرصت کمی داشتم تا جاوااسکریپت رو درست یاد بگیریم و این بار ReactJS رو شروع کنم.اون پروژه شاید یکی از بهترین اتفاق‌های زندگی من بود. بیشتر به این خاطر که دوباره تلاش کردم تا برنامه نویسی رو یاد بگیرم. زیاد مهم نبود از چه تکنولوژی‌هایی استفاده می‌شه. مسیر کاری من تغییر کرده بود و همین حس خیلی خوبی به من منتقل می‌کرد.همیشه بهترین راه یادگیری برای من، تدریس بوده و هست. بعد از چند ماه که احساس کردم مبانی جاوااسکریپت رو متوجه شدم، اون مطالب رو به شکل کارگاه‌ها و دوره‌های حضوری آموزش دادم. این باعث شد تا تسلط خود من هر روز بیشتر بشه.قبلا کدهایی با PHP نوشته بودم، اما می‌تونم بگم بک‌اند رو با NodeJS شروع کردم. این بار متوجه شدم مسیری که شروع کردم، واقعا چیزی هست که دنبالش بودم. برای همین تصمیم گرفتم تا جدی‌تر ادامه بدم و امروز تمام تمرکزم بر روی ReactJS و NodeJS هست.یادگیری خودم رو با کمک تدریس در دوره‌های حضوری و آنلاین در فرانت‌ کست ادامه می‌دم چون به نظرم یکی از بهترین مسیرهای کاری برای من می‌تونه باشه. البته مدت‌ها طول کشید تا این رو متوجه بشم و قطعا شکست‌های زیادی بوده و هست.من جاوااسکریپت رو انتخاب کردم، شاید چون اولین باری بود که یک نرم افزار توسعه دادم. اما در طول این سال‌ها متوجه شدم که نیازهای یک پروژه هست که زبان‌ها و پلتفرم‌ها رو تعیین می‌کنه. هیچ وقت اینها در رقابت باهم نبودن و نیستن. قطعا علاقه و مسیر کاری یکی از مهم‌ترین دلایل انتخاب می‌تونه باشه.زمانی که با دوستانم که با زبان‌های PHP یا Python کار کرده بودن در مورد مباحث بک‌اند صحبت می‌کردیم، متوجه می‌شدم تفاوت چندانی بین NodeJS و اونها نیست. ما فقط از ابزارهایی استفاده می‌کنیم که برای پروژه به عنوان گزینه مناسب انتخاب شدن. تمرکز اصلی روی خود برنامه نویسی هست.قطعا جاوااسکریپت می‌تونه بازار کار خیلی خوبی داشته باشه. به این دلیل که با این زبان برای اکثر پلتفرم‌ها می‌تونیم نرم افزار توسعه بدیم. نمونه‌های خیلی خوبی با این زبان پیاده سازی شدن. زمانی که ما مفاهیم برنامه نویسی رو درک کنیم، یادگیری زبان‌های مختلف خیلی ساده‌تر هست.واقعیت این هست که برنامه نویسی می‌تونه کار پردرآمدی باشه نسبت به شغل‌های دیگه. ولی تنها چیزی که ما رو در این مسیر نگه داشته، علاقه بوده و هست. هیچ وقت نباید این کار رو صرفا برای درآمد انتخاب کرد. یک برنامه نویس شاید سال‌ها درآمدی که می‌خواد رو نتونه داشته باشه ولی راهش رو ادامه بده.پس جریان اصلی فارغ از زبان یا تکنولوژی هست. همیشه سر کلاس‌هام پیشنهاد می‌کنم هر کسی برای خودش یک پروژه واقعی تعریف کنه تا با چالش‌های واقعی مواجه بشه. شاید اون زمان هست که متوجه می‌شیم به این کار علاقه داریم یا نه.اگر مایل بودین می‌تونین آموزش‌های آنلاین من رو در وب‌سایت فرانت کست ببینید :)</description>
                <category>Masood</category>
                <author>Masood</author>
                <pubDate>Sat, 22 Sep 2018 13:58:09 +0330</pubDate>
            </item>
            </channel>
</rss>