<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های علی گلکار</title>
        <link>https://virgool.io/feed/@aligolkar</link>
        <description>هر روز درحال یادگیریم تا زمانی که جان برتن است، یک برنامه نویس، کمیک‌فن و فریلنسر</description>
        <language>fa</language>
        <pubDate>2026-06-10 18:27:15</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/28860/avatar/Hxdw6Y.png?height=120&amp;width=120</url>
            <title>علی گلکار</title>
            <link>https://virgool.io/@aligolkar</link>
        </image>

                    <item>
                <title>مرا فریلنسر خطاب نکن. غلط کردم!</title>
                <link>https://virgool.io/jihaat/%D9%85%D8%B1%D8%A7-%D9%81%DB%8C%D9%84%D9%86%D8%B3%D8%B1-%D8%AE%D8%B7%D8%A7%D8%A8-%D9%86%DA%A9%D9%86-%D8%BA%D9%84%D8%B7-%DA%A9%D8%B1%D8%AF%D9%85-nyt2gvzeaotz</link>
                <description>الان یه آدم خفنم که برای خودش کار می‌کنه، خیلی‌هم پُز فریلنس بودنش رو می‌ده به همه که آره چقدر خوبه، هر وقت خواست کار‌می‌کنه، هروقت نخواست کار نمی‌کنه، هر موقع خواست میزنه بیرون برا خودش می‌گرده و نیازی به مرخصی و این داستان‌ها هم نداره، نیاز نیست ساعت هفته صبح لنگ اتوبوس و مترو باشه، همه چیز دست خودشه و خلاصه روزگارش گل و بلبلهخیلی خوبه نه؟‌ اما همه چیز اینجا تموم نمی‌شه!این پست ادامه پست قبلیم با فاصله حدودا ۱ سال و نیمه پس قبل از ادامه این پست بهتره پست قبلی رو مطالعه کنید:مرا فریلنسر خطاب کنداستان چیه؟بهمن ۹۸: چندتا پروژه از قبل داشتم یکی از شرکتی که قبلا توش کار می‌کردم و چندتاهم از جاهای دیگه گرفته بودم و سرگرم انجام اونا بودم.اسفند ۹۸: کماکان درگیر پروژه‌ها بودم و از نوران هم اومدیم بیرون مثل اینکه به یه سری مشکلات خورده بودن با دانشگاه علوم پزشکی و خیلی سرویس خوبی نسبت به قبلشون ارئه نمی‌دادن حتی قبل از این که ما بریم مثل این که حراست دانشگاه علوم پزشکی یه بار اومده بوده تیم ‌ها رو کاملا محترمانه با قطع برق به بیرون هدایت کرده بوده و بعد هم که به خاطر کرونا تعطیل شد و بعد از اونم دیگه فهمیدم که کلا جمع کردنفروردین ۹۹: پروژه‌ها رو به اتمام بود و من استرس این رو داشتم که خوب الان اینا رو دادم تحویل بعد از این پروژه از کجا گیر بیارم و گذران عمر کنم؟!شروع داستانمشکلات داشتن شروع می‌شدن، یه دو سه ماهی که گذشت حساب کردم دیدم نسبت درآمد ماهیانم با درآمدی که تو زمان کارمندی داشتم حدودا یکیه و خوب این خیلی خوب نیست! چون یکی از دلایلی که کار قبلیم رو ول کرده بودم حقوق پایینش بود.یه چندتا کانال تلگرامی عضو شده بودم که پروژه می‌زاشتن توشون تا فریلنسرا انجام بدن ولی خوب خیلی چیز به‌درد بخوری توشون نبود ۹۰٪ شون پروژه دانشگاهی بود و اون ۱۰٪ بقیه هم قیمت پایین می‌خواستن :| خیلی پایین، انقدری که فقط با بلاک کردن می‌تونستم حق مطلب رو بهشون ادا کنم.حالا چندتا مشکل داشتم که خیلی بهشون اهمیت نمی‌دادم ولی خوب مشکلات نسبتا جدی هستن برای همهیکیش امنیت مالیه، فریلنسر که باشی امنیت مالی نداری و همش باید فکر و ذکرت این باشه که ای بابا حالا چیکار کنم برای ماه دیگه پروژه ندارم.دومیش بیمست،‌ من خیلی اهمیتی نمیدم به بیمه ولی خوب بدمم نمیاد، از اون‌ور وقتی فریلنسر باشی کسی بیمت نمی‌کنه و این معنیش اینه که بازنشتگی در کار نیست و تا زمانی که کار کنی پول داریبحث بعدیش تعطیل کردنه، همیشه می‌گن که خوبی فریلنسر بودن اینه که هر وقت بخوای کار می‌کنی و هر وقت‌هم بخوای تعطیل می‌کنی، ولی یه نکته ریزی اینجا هست و اونم اینه که خیر، اینطور نیست!شما نمی‌تونی هر وقت خواستی به یه پروژه بگی نه چون کارفرما منتظر تو نمی‌مونه که از تعطیلات برگردی و خوب میره سراغ نفر بعدی و این اصلا خوب نیست و علاوه بر پروژه خود کارفرما هم می‌پره و پروژه‌های بعدیش رو برای تو نمیاره، جدای از اینا طمع می‌کنی و می‌خوای همه پروژه‌های که بهت پیشنهاد می‌شه رو بگیری و آخر سر هم همش رو دستت باد می‌کنه و به ددلاین نمی‌رسه و حالا باید دیرکرد و خسارت بدی. «البته این تجربه رو من نداشتم و یکی از دوستان تو زمان فریلنسیش داشت.»مشکل بعدی اینه که روزمرگی اینجوری حل نمی‌شه و حالا کارو زندگیت‌هم باهم قاطی می‌شه اگه نتونی خوب مدیریتش کنی، دیگه شبا تا صبح بیداری و روزا تا شب خواب و کلا چیزهای از این دست که الان که می‌خونی ممکنه بگی خوب این که بد نیست ولی خوب وقتی یه مدت باهاشون دست و پنجه نرم می‌کنی می‌بینی که یه غول بی‌شاخ و دُمن که تو عنفوان جوانی بیشتر روز رو خوابی بقیش رو هم قطعا یه کاری می‌کنی که خیلی مفید نیست و خوب بازدهیت توی‌ کار رو به شدت میاره پایین.و یه سری مشکلات دیگه که در این مقال مگنجد.در مقام مقایسهبه نظرم اگه مزیت ها و مشکلات کارمندی و فریلنسی رو باهم مقایسه کنیم قطعا به نتیجه خوبی می‌رسیم:روزمرگیالان به این نتیجه رسیدم که ارتباطی نداره واقعا چه کارمند باشی چه فریلنسر ممکنه دچار روزمرگی شی، باید دنبال راه بود برای فرار از روزمرگی مثلا دوچرخه سواری، باشگاه رفتن، یا مثلا موسیقی خوندن و کلاس زبان و... . بری سراغ یه سری کار که بهشون علاقه داری و باهاشون کیف می‌کنی که زندگیت از محل کار به رخت خواب نباشهپ‌ن: این مطلب رو درحالی دارم می‌نویسم که از سرکار اومدم و مستقیم رفتم تو تخت‌خواب!مثلا خودم با دوست صمیمیم آخر هفته قبل از عید امسال رو رفتیم توی کافه‌ای که همیشه اونجا پاتوق می‌کردیم و افتخاری (‌باکلاس همون مُفتی خودمون) کار کردیم و چقدرهم واقعا خوش گذشت. تجربه این رو هم داشتم که برا خودم یه شِیک بزنم و چقدر چسبید اون بهم!البته الان که فکر می‌کنم خیلی هم خاص نبود مثل بقیه شیکای که بهم حال می‌داد، حال داد.امنیت مالیتوی این قسمت خوب طبیعتاً کارمندی بهتره چون همیشه سر موعد مقرر حقوقت واریز می‌شه و دیگه نگرانی مالی نداری و می‌طونی برای پس‌انداز یا وام گرفتن برنامه ریزی کنی. توی فریلنسری ممکنه یه ماه چهارتا پروژه باهم بیاد یه ماهم هیچی که هیچی، برهوت مثل کویر لوتتعطیلاتهمون طور که بالاتر گفتم فریلنسری رو فکر می‌کنیم که تعطیلات به اختیار خودمونه ولی خوب وقتی بیفتی تو کار نمی‌تونی پروژه‌ها رو رد کنی برای تعطیلات چون وقتی برگردی ممکنه دیگه پروژه‌ای نباشه! بستگی داره چقدر اهل ریسک کردن باشی.اما توی کارمندی چطور؟ وقتی کارمندی یه سری تعطیلات هست که خوب عمومیه و خوب نسبت به محل کارت در سال چند روزم می‌تونی مرخصی استحقاقی بگیری یعنی مرخصی با حقوق که اگه اهل مسافرت رفتن باشی می‌تونی از دو روش مرخصی نسبتا طولانی بگیری:یکی اینکه کل مرخصی‌هاتو نگه داری و آخر سال همه رو یکجا بریدوم اینکه بزاری یه چند روز تعطیلی پشت سرهم که رسید تو هم چند روز قبل و بعدش یا بینش اگه مثلا سه‌شنبه و چهارشنبه تعطیل بود و از اون ور هم جمعه پنجشنبه رو مرخصی بگیری و ۴ روز عشق و صفا و یار اگر یاری‌هم نبود گلنار ؛)برای مثال یادمه یه هفته پنجشنبه‌ش تعطیل بود و ماهم با بچه‌های تیم‌فنی ژیهات شنبه رو مرخصی گرفتیم و همه رفتیم جزیره هرمزاسترس مسائل کاراسترس هم که بیشترش به همون امنیت مالی بر می‌گرده به نسبت عامل مهمیه، توی فریلنسری تو استرس اینو داری که هزینه‌هات رو چطور مدیریت کنی که اگه ماه دیگه درامدی نداشتی به پیسی نخوری یا بیمه رو حالا چیکار کنم یا اینکه پنجتا پروژه گرفتم هفته دیگه ددلاین و من هنوز شروعشونم نکردم حتی و این چیزاساعت کاریتوی فریلسنری زمان دست خودته، می‌تونی روزا بخوابی شبا کار کنی، یا شبا بخوابی روزا کارکنی و این خوبه ولی خوب نباید هم از دستت در بره چون ممکنه کار و زندگیت قاطی شه و دیگه الفاتحهاما توی کارمندی نه، صبح زود (‌معمولا)‌ باید پاشی آماده شی بری در انتظار اتوبوس یا مترو یا اگه وسیله داری تو صف بنزین و بعدش خودت رو برسونی سر کار شروع کنی به کار کردن تا پاسی از بعدازظهر و برگردی خونه و بقیه روزت رو تصمیم با خودت بری کلاسی جایی یا بخوابی یا هرچیز دیگه‌ایمن خودم به شخصه تو دوران فریلنسیم تو خونه نمی‌موندم تا کار و زندگیم باهم قاطی نشه، به همین دلیل یه مدت رفتم فضای کاری نوران و اونجا میز گرفتمتجربه کار در تیم!یکی از مزیت‌های کارمندی اینه که توی یه تیم کار می‌کنی و خوب توی فریلنسری احتمالش به مراتب کمتره!به نظرم بهترین مزیتی که کار توی تیم داره اینه که حوصله آدم سر نمی‌ره!.همیشه یکی هست که سر چیزای خفن مثل تکنولوژی روز صحبت کنی یا سر اینکه کدوم زبان برنامه نویسی بهتره دعوا کنی یا حتی همه جمع شیم و موقع ناهار یه قسمت سریال یا فیلم ببینیم! خلاصه آدم رو از لاک خودش بیرون می‌کشه و حتی باعث میشه آدم اجتماعی تر باشی مخصوصا تو کیس من که دایره لغاتم موقع صحبت کردن به سلام، چطوری، چه خبر و دیگه چه خبر خلاصه می‌شه.  :\نکته‌ای که باعث شد محل کار قبلیم افتضاح باشه و من رو از کارمندی‌هم زده بکنه یکیش همین نبودِ تیم و سلسه مراتب بود که در نتیجه تسک‌ها مستقیما از طریق مدیر مجموعه بهم داده می‌شد و من باید انجام می‌دادم.کلا یه من بودم یه اندروید دولوپر با یه منشی و یه دیزاینر که این دوتا خانوم بودن و توی اتاق دیگه بودن و کل ارتباط‌ ما با هم سلام صبح بخیر و خداحافظ بود در طول روز و منم از وقتی که اندروید دولوپر رفت تک و تنها بودم توی اون شرکت و واقعا حوصلم سر می‌رفت!الان که فکر می‌کنم خدایی حق داشتم سر این کارمندی رو بزارم کنار همی یهویی رفتم کارمند شدم!یه مدت بود که به این فکر افتاده بودم که یه شغل ثابت پیدا کنم ولی خوب از اونورهم خیلی تنبل بودم و حوصله گشتن دنبال کار جدید نداشتم یه پروژه‌ نسبتا سنگین ‌هم دستم بود و با خودم می‌گفتم اینو که دادم تحویل و تموم شد می‌گردم دنبال کار جدید تا این‌که دوست صمیمیم پیشنهاد کار توی شرکتی که خودش کار می‌کرد (ژیهات) رو بهم داد. چی بهتراز این همکار بودن با دوست صمیمی... .مصاحبه کردم و قرار داد بستیم و رفتم سرکار الانم حدودا یک ساله که توی ژیهات به عنوان طراح رابط کاربر کار می‌کنم و در مورد تجربم توی ژیهات توی (انتشارات ژیهات) بیشتر می‌نویسم.برای بهتر زندگی کردن چیکار می‌کنم؟الان حداقل اینو می‌دونم که فریلنسر و کارمند بودن خیلی فرقی تو نتیجه‌ها ندارن (حداقل تو تجربه‌ای که من دارم)‌ پس در کل سعی می‌کنم به خودم سخت نگیرم و از همینی که هست لذت ببرم، روزا بعد کار اکثرا فیلم می‌بینم یا بازی می‌کنم و گاهی اوقات کتاب می‌خونم. تاببینم در پایان چی می‌شه!ممنون که خوندید مطلب‌رو تا اینجا، امیدوارم مفید بوده باشهبی زحمت لایکم بکنید از شرکت بهمون گفتن لایک بگیریم پاداش میدن ? و خوشحال می‌شم نظرات شما رو در مورد کارمند بودن و یا فریلنس بودن بشنوم.</description>
                <category>علی گلکار</category>
                <author>علی گلکار</author>
                <pubDate>Mon, 24 May 2021 13:47:26 +0430</pubDate>
            </item>
                    <item>
                <title>مرا فریلنسر خطاب کن!</title>
                <link>https://virgool.io/@aligolkar/freelancer-pjvfsrijju1q</link>
                <description>سلام،در واقع ماجرا از اونجای شروع شد که دیگه تقریبا... البته تقریبا که نه کاملا دچار روزمرگی شده بودم و علاوه بر روزمرگی دیگه وقتی برای یادگرفتن چیزای جدید و فکر کردن به ایده‌هام پرورششون و اجرایی کردنشون نداشتم. تمام وقتم توی روز شده بود کار-کار-کار، همش کار، فقط کار ?برنامه روزانم به این شکل بود که صبح ساعت ۷ از خواب پاشم، تا ۷:۳۰ اماده شم و از خونه بزنم بیرون سوار اتوبوس شم و برم شاهچراغ ( من تو شیراز زندگی می‌کنم) از اونجا هم تا زند پیاده برم و سوار مترو شم و برم پل‌معالی آباد اونجا هم تاکسی سوار شم و راس ساعت ۹ برسم سرکار، شروع کنم به کد زدن و تیک زدن تسک‌های اون روز تا زمانی که تسکا تموم شه که البته همین باعث میشد بعضی روزها تایمی رو بیشتر هم بمونم تا تمام تسکا تیک بخورن و رفع شن و صد البته خیلی وقتها هم تنبلی می‌کردم و ادامشون رو به روز بعد موکول می‌کردم.معمولا ساعت ۴ یا ۵ از محل کارم می‌زدم بیرون و خوب تا میرسیدم خونه شب بود و انقدری خسته بودم که شام/ناهار نخورده بخوابم! البته همیشه هم نه بعضی وقتا اینطور بودی! تقریبا ۲،۳ بار فقط ?وقتی که میومدم خونه هم که خوب دیگه واقعا حوصله فکر کردن و تفکر به این که حالا چه پروژه شخصی رو پیش ببرم و چه ایده‌ای رو دنبال کنم نداشتم و اگه‌هم قصد خوابیدن هم نداشتم یه گیم رو باز میکردم و انقدر بازی می‌کردم تا قصد خوابیدن پیدا کنم و تمام. روز از نو روزی از نو!البته یچیزی رو هم بگم که تایم سرکار رفتن من همیشه هم به این دقت نبود مخصوصا اون اواخر یکم دیرتر میرفتم محل کارم ولی خوب طبعا هر روز به همون مقداری که دیر کرده بودم دیرتر هم برمیگشتم و این یعنی خستگی بیشتر و بیشتر که نهایتا حداقل برای من بی انگیزگی به کاری که داشتم میکرم رو میاورد.اوج این فاجعه اونجایی بود که دانشگاه هم به کار اضافه شد. البته فکر میکردم دانشگاه روزمرگیم رو کمتر کنه ولی خوب خیلی هم اینطور نبود.یه پرانتز اینجا باز کنم که ( من خیلی از همون بچگیم هم آدم درس خونی نبودم و تقریبا از زمان دبیرستان که یکم از زیر فشار خانواده واسه درس خوندن مخصوصا شبای امتحان دراومده بودم و دیگه کسی مجبورم نمی‌کرد درس بخونم، فاصلم با درس زیاد شد و دیگه همون شب امتحانم درس نمی‌خوندم! )حالا دیگه علاوه بر کار کردن باید دانشگاهم میرفتم، البته فقط میرفتم که اونم برای فرار از روز مرگی بود، صبح ها ساعت ۶ بیدار میشدم و تا اماده میشدم میرسیدم دانشگاه ساعت ۷ بود و استاد داشت بسم‌الله درس رو میگفت که یالله کنان وارد کلاس می‌شدم. بعد از کلاسام‌هم روزایی که دانشگاه تا بعد از یک کلاس داشتم رو میرفتم خونه و اونجا کار میکردم و روزایی که تا قبل از ۱ تموم می‌شد ناهار رو تو سلف دانشگاه می‌خوردم و زیر نور مستقیم آفتاب سوار اتوبوس میشدم که هوای توش خفه بود و ۹۰ درصد اتوبوس های اون خط هم کولر نداشتن و این یعنی نابودی من (الان که دارم بهش فکر می‌کنم هم اعصابمو خورد می‌کنه) و مسیر دانشگام تا پایانه قصرالدشت رو باید تو اتوبوس دم می‌کردم و می‌رسیدم قصرالدشت اونجام با اتوبوس بعدی تا محل کار و ادامه ماجرا...با این وضعیت دانشگاه رفتن یه مقدار روز مرگیم رو کم کرد ولی بعد چند وقت سرحالتر که نشدم هیچ بلکه احساس کردم دارم روز به روز بی‌حال تر و خسته تر میشم و دیگه نه انگیزه کاردشتم نه دانشگاه فقط دلم میخواست بخوابم واقعا تاثیر بدی داشت روم میزاشت.شروع روزگاری دگردیگه تصمیم خودم رو گرفتم، اینجوری کار کاردن برا ما زندگی نمی‌شه،‌ از محل کارم استعفا دادم و به زندگی فریلنسری سلام کردم.البته فریلنسر بودن معنیش صرفا این نیست که فقط باید تو خونه کار کرد! من یه داداش ۲ ساله دارم که سروصدایی که یه موتور با ۲ملیون اسب بخار میتونه تولید کنه در مقابل سروصدای ایشون هیچهتنها ایده ای که اون زمان به ذهنم رسید این بود که توی یه فضای کار اشتراکی تو شیراز ثبت نام کنم، توی شیراز کلا سه‌تا فضای کار بیشتر نیست:اولیش پارک علم و فناوری بود که به دو دلیل مناسب من نبود یک اینکه مخصوص استارتاپ هاست نه فریلنسر ها و دوم این که اون سر شهر بود و حداقل ۳ ساعت راه بود از خونه ما تا اونجا و سرویس می‌شدم اگه می‌خواستم برم.دومیش شتاب دهنده کوانتوم تو ساختمان مدیریت دانشگاه شیراز بود که خیلی مناسب بود هم فضای کاری عالی داشت و هم دسترسی خوبی داشت ولی پر بود... . از چهره تیمایی هم که اونجا داشتن کار می‌کردن هم معلمو بود که اینا لنگر خوردن کنگر انداختن و حالا حالا ها قصد مهاجرت ندارن :دیمی‌موند گیزنه سوم یعنی شتابدهنده نوران دانشگاه علوم پزشکی که تو خیابان نشاط بود. نوران کیفیتش متوسطه از لحاظ فضای کاری یه تم با رنگای روش داره با پرده های رنگی رنگی که پنجره های اطراف رو پوشندن و یه میز پینگ پنگ که در حال حاظر به عنوان میز ناهار خوری‌هم ازش استفاده می‌شه یه چندتا مبل رنگی رنگی که توسط کمدها و اوپن آشپزخونه محاصره شده و میتونی اونجا پاتو دراز کنی و یکم استراحت کنی و اتاق جلسات و مشکلاتش هم اینه که ساعت کاریش ۹ تا پنج بعد از ظهره و خوب نسبتا خیلی محدوده و دومیش اینکه سرویس بهداشتی نداره . . . ، البته ندارم نیست سرویس بهداشتیش با سالن سیناصدرای بقلش مشترکه و باید از سرویس اونجا استفاده کرد که البته اونم دردسرای خودش رو داره با نگهبانان محترم سالن :\فضای کار نوران ما ( من و صالح دوستم ) یه میز دونفره اجاره کردیم و شروع به کار به کار کردیم توی نوران روز اول سر میز پینگ‌پنگ جهت صرف ناهار با بقیه تیم ها آشنا شدیم یه تیم برنامه نویس، یه تیم دیگه که هنوز نمی‌دونم کارشون چیه ( فکر کنم تولید محتوا میکنن ) ، یه تیم گرافیست، و یه تیم بازم گرافیست که ۲۴ ساعته سرشون تو افترافکته و یه برنامه نویس اندروید که دقیقا وسط سالنه میزش هرروز با مسخره بازیای اندروید استدویو سروکله میزنهماهم شدیم تیم بعدی که اونجا فعالیت میکنه (‌ البته تیم که نبودیم ولی خوب باهم بودیم ) روز اول مانیتور گندمو زدم زیر بغل و رفتم اونجا گذاشتمش روی یکی از میزا و منظر موندم تا صالح بیاد و یه میز و انتخاب کنیم و بندو بساط مون رو بچینیم و شروع کنیم به کار.میز من الان حدودا یکماه که تو نورانم و خوب دیگه اون حس کذایی روزمرگی برام خیلی کمرنگ شده و تنها مشکلم ساعت کاری نورانهبرای اسفند ما قصد تمدید ندارم و می خوام یک ماه رو به خودم استراحت کامل بدم و فقط پروژهایی که از قبل داشتم رو توسعه شون بدم و یکم سبک کار کنم و دوباره از فروردین برگردم به نوران و پرانرژی با حال خوبم به کار ادامه بدم.در کل اینکه فریلنسر شدم برای من تغییر بزرگی بود تو زندگیم و چون دیگه چیزی به اسم حقوق ثابت نیست که روش بتونم حساب کنم و صرفا فقط رو پولی که الان تو جیبمه - و کارتم ; ) - می‌تونم حساب کنم وزندگی رو بگزرونم ولی خوب کماکان حس خوبم رو به آینده دارم و همنیطور دارم به جلو پیش می‌رم تا به موفقیت برسم.پایان.امیدوارم خوشتون اومده باشه منتظر نظراتتون این پایین هستم.</description>
                <category>علی گلکار</category>
                <author>علی گلکار</author>
                <pubDate>Sun, 16 Feb 2020 15:21:04 +0330</pubDate>
            </item>
                    <item>
                <title>سی پلاس پلاس - قسمت۲ [جریان‌خروجی‌‌]</title>
                <link>https://virgool.io/@aligolkar/cpp-part2-nqozys70cxj2</link>
                <description>سلام دوباره ?? امشب با قسمت۲ یعنی جریان خروجی برگشتیم، توی این قسمت می‌خوایم جریان خروجی رو یادبگیریم که اصلا داستانش چیه و از چه قراره؟!قبل از شروع آموزش فقط اینو بگم که اگه قسمت قبلی رو خونده باشید بعضی از قسمت های این مطلب یکم براتون تکراریهقبل از شروع کدهای پایه و تابع main رو که تو قسمت قبل باهاشون آشنا شدیم رو می‌نویسیم.#include &lt;iostream&gt;
using namespace std;
int main()
{

    return 0;
}جریان خروجی چیست؟همونطور که از اسمش پیداست قراره خروجی مارو برامون مدیریت کنه پس میشه گفت جریان خروجی درواقع باعث این میشه که ما نتایج محاسبات و حالا هرکاری که کردیم توی برناممون رو به کاربر نشون بدیم - همون echo/print خودمون - برای این عمل در c++ ما از یه تابع به اسم cout استفاده می‌کنیم.نکته: تابع cout به هدر فایل iostream نیاز داره و بدون اون با مشکل مواجه می‌شید.نگارش تابع cout هم به صورت زیر هست:cout &lt;&lt; [content] ;خوب شاید الان براتون این سوال پیش اومده باشه که این دوتا ( &gt;&gt; ) کاربردشون چیه؟؟ درواقع کارشون اینه که محتواها رو به صورت متوالی به هم می‌چسبونن تا درپایان با cout روی صفحه چاپ شن.cout &lt;&lt; [content1]  &lt;&lt; [content2]  &lt;&lt; [content3]  &lt;&lt; [content4] ;نکته: توی اکثر زبان های برنامه نویسی گذاشتن ( ; ) در آخر هر دستور اجباریه و سی پلاس‌پلاس هم از این قاعده مستثنا نیست.خوب بریم سراغ یه مثال عملی، ما می‌خوایم رشته Hello World! رو روی صفحه چاپ کنیم:cout &lt;&lt; &quot;Hello World!&quot; ;خروجی این دستور به شکل زیر است.Hello World!و یا این رشتهcout &lt;&lt; &quot;Hello i`m ali, i have blog on virgol.&quot; ; و خروجیش :Hello i`m ali, i have blog on virgol.خوب ما می‌تونیم همین رشته رو اینطوری هم بنویسیم که خروجیش هیچ فرقی نداره:cout &lt;&lt; &quot;Hello i`m &quot; &lt;&lt; &quot;ali, i have blog on &quot; &lt;&lt; &quot;virgol.&quot; ; خروجیش دقیقا همون قبلیه.&#x27;کتیشن&#x27;  یا &quot;دبل‌کتیشن&quot; مسئله این است!اینجا قضیش در مورد رشته‌ها یه مقدار متفاوته، شما توی کتیشن ( &#x27; &#x27; ) حق ندارید بیش‌از یک تَک حرف بنویسید، به عنوان مثال نمی‌تونید توش کلمه یا جمله ای بنویسید و برای این کار لازمه که از دَبل‌کتیشن ( &quot; &quot; )  - دابل‌کتیشن یا دوبل‌کتیشن یا دُبل‌کتیشن و تلفظ های ممکن دیگر - استفاده کنید. مثال زیر رو بینید:cout &lt;&lt; &#039;Hello World!&#039; ; این کد غلط - اشتباه - هست و باید به صورت زیر نوشته بشه:cout &lt;&lt; &quot;Hello World!&quot; ; این کدها هم هر دو درست هستن و کامپایلر باهاشون مشکلی نداره:cout &lt;&lt; &quot;A&quot; ; 
cout &lt;&lt; &#039;A&#039; ; خوب بریم سراغ چیزهای باحالی که می‌تونند توی مثال‌های بالا تغییراتی رو ایجاد کنن.تابع endlشما برای رفتن به خط بعد در خرو‌‌جی می‌تونید از تابع endl استفاده کنید، برای مثال:cout &lt;&lt; &quot;Hello World!&quot;;
endl(cout);
cout &lt;&lt; &quot;this is virgol.&quot;;کد زیر به این صورت چاپ می‌شه:Hello World!
this is virgol.و البته می‌تونیم به این صورت توی خود cout هم ازش استفاده کنیم:cout &lt;&lt; &quot;Hello World!&quot; &lt;&lt; endl &lt;&lt; &quot;this is virgol.&quot;;یا به این صورتcout &lt;&lt; &quot;Hello World!&quot; &lt;&lt; endl;
cout &lt;&lt; &quot;this is virgol.&quot;;توابع از این نوع دیگه‌ای هم هست که با یه سرچ ساده تو نت می‌تونید گیر بیاریدشون.فقط یه چیز یادتون باشه که بعضیاشون نیاز به هدر فایل خاصی دارن که بدون اون کار نمی‌کنناسکیپ کد (escape code)اسکیپ کدها یه قراردادن بین زبان و کامپایلر یعنی یه ترکیباتی هستن که اگه توی جمله ازشون استفاده کنیم به همون صورت چاپ نمی‌شه و باعث میشه یه اتفاقی بیفته برای مثال اسکیپ کد (‌ \n ) عملی مشابه تابع endl رو انجام می‌ده یعنی ادامه رشته‌رو به خط بعد میفرسته.مثال:cout &lt;&lt; &quot;Hello World!\nthis is virgol.&quot;;خروجی کد بالا به این شکل است:Hello World! 
this is virgol.نکته: اگر اسکیپ کد به حروف قبل و یا بعدش بچسبه مشکلی پیش نمیاد، به مثال بالا دقت کنید می‌بینید که World به /n و /n هم به this چسبیده و بینشون فاصله نیست ولی تو خروجی درست عمل می‌شه!چندتا از اسکیپ کدهای دیگرو براتون این زیر می‌نویسم:Carriage retuen               ------&gt;     /rBackspace                       ------&gt;     /bSingle quotation mark     ------&gt;     /&#x27;Form feed                         ------&gt;     /fBell (alert)                        ------&gt;     /aاسکیپ کدهای‌ دیگه‌ای هم هست که میتونید توی اینترنت پیدا کنید.اما حالا یه مشکلی شاید پیش بیاد خوب شاید من بخوام توی رشتم دقیقا عین ( hi /flany ) رو بنویسم و بک‌اسلش هم بیفته - شایدم اسلشه من هنوز فرقشون رو نمیدونم ? - خوب قطعا من برام مشکل پیش میاد چون با این رشتهcout &lt;&lt; &quot;hi /flany.&quot;;این توی صفحه چاپ می‌شه:hi 
lany.برای جلوگیری از این مشکل فقط لازمه که از یه بک‌اسلش اضافی استفاده کنیم یعنی:cout &lt;&lt; &quot;hi //flany.&quot;;که خروجیش به این صورت می‌شه:hi  /flany.خوب این قسمت هم اینجا به پایان رسید. اگر غلط املایی یا چیزی هم بود به بزرگی خودتون ببخشید.لایک یادتون نره و از کامنتاتونم محرومم نکنید. ❤️ ? تمرینم یادتون نرهشاد باشید ❤️</description>
                <category>علی گلکار</category>
                <author>علی گلکار</author>
                <pubDate>Thu, 11 Apr 2019 01:56:12 +0430</pubDate>
            </item>
                    <item>
                <title>شروع سی پلاس‌پلاس در گنو/لینوکس - قسمت اول</title>
                <link>https://virgool.io/@aligolkar/cpp-part1-izkp7tnajgi4</link>
                <description>سلام، سال نو مبارکتو این آموزشای که به مرور کاملشون می‌کنم (به‌شرط حیات) در مورد برنامه نویسی سی پلاس‌پلاس (c++) تو محیط گنو/لینوکس صحبت میکنیم و مرحله به مرحله می‌ریم جلو تا آخرکارقبل از شروع آموزش لازمه بگم که من برنامه نویس سی پلاس‌پلاس نیستم و خودمم در حال حاضر دارم یاد می‌گیرم پس اگر جایی اشتباهی توی توضیحات بود به بزرگی خودتون ببخشید و بهم اطلاع بدید تا سریع ویرایشش کنم.خوب فکر کنم توضیحات بسه! مستقیم، سریع و چکشی میریم سر اصل مطلبنصب ابزار مورد نیاز برای برنامه نویسی سی پلاس‌پلاسخوب تبعاً قبل از هر کاری باید یه ادیتور داشته باشیم که کدهامون رو داخل اون بنویسیم ویا مدیریت کنیم و بعد از اون یه کامپایلر که بتونیم برنامه ها رو به وسیله اون کامپایل کنیم تا اجرا بشن!.۱.نصب کامپایلرما برای کامپایل برنامه‌هامون توی این آموزش از کامپایلر g++ استفاده میکنیم. g++ مخفف GNU C++ در اصل یه کامپایلر c++ هست که برای محیط GNU طراحی شده.برای نصب وارد ترمینال میشیم و دستور زیر رو تایپ می‌کنیم:البته توی اکثر توضیع ها به صورت پیش‌فرض نصب هست.sudo apt install g++و منتظر می‌مونیم تا نصب شه...۲.نصب ادیتورادیتوری که ما توی این آموزش می‌خوایم از اون استفاده کنیم geany هست. و خوب فعلا برای شروع کار خوبه  و دوم از اون رابط کاربریشم تشابه زیادی به dev-c++ و امثالهم داره.برای نصب دستور زیر رو تایپ می‌کنیم:sudo apt install geanyبعد از نصب نرم افزار و باز کردنش با محیط زیر روبه‌رو می‌شیم:محیط نرم افزار Geanyخوب برای تست صحت کار و نبود مشکل هم یه تکه کد رو فعلا مینویسیم ببینیم درست کارمی‌کنه یا نه؟نمونه کد#include &lt;iostream&gt;
using namespace std;
int main()
{
cout &lt;&lt; &quot;Hello World!&quot; &lt;&lt; endl;
return 0;
}نکته: کد بالا برای کامپایلر g++ نوشته شده و اگه از کامپایلر دیگه‌ای استفاده می‌کنید ممکنه لازم باشه توی کدتون تغییراتی رو انجام بدیدتوضیح کد بالاخط اول:تو خط اول هدرفایل iostream رو اضافه کردیم، خوب اصلا این هدرفایل چی هست؟هدرفایل هارو به عنوان کتابخانه‌های c++ می‌شناسن و در واقع کدهایی هستن که از قبل نوشته شدن و ما فقط لازمه اونهارو فراخوانی کنیم تا بتونیم از برخی توابع و روال‌ها استفاده کنیم.iostream چیه؟iostream یه استاندارد برای خواندن یا نوشتن توی جریان ورودی و خروجیه که در ادامه با اونا آشنا می‌شیم، صرفا در این حد بدونید که با نوشتن کد خط اول به کامپایلر میگیم که من میخوام توی برنامم از دستوراتی مثل cout و cin استفاده کنم و اگر اون تکه کد رو نزنیم کامپایلر در هنگام کامپایل این دستورات با مشکل مواجه میشه، پس اجباریه که همیشه در آغاز کدهامون نوشته باشیمش.خط دوم: اینو جلوتر میگم فعلا میگذریم ازشخط سوم: این جا تابع اصلی برنامه شروع می‌شه، یعنی برنامه بعداز کامپایل از این نقطه شروع و پردازش می‌شه! هر برنامه C++ باید تابع main() رو داشته باشه. توی این تابع ما بلوکها و خطوط برناممون رو می‌نویسیم.خط چهار و هفت: این آکولادها - {} - در واقع شروع و پایان تابع main() رو تایین میکنن یعنی شروع و پایان برنامه ما!خط پنجم: دستور cout توی هدر فایل iostream تعریف شده یعنی اگه اون بالا iostream رو فراخوانی نکنیم کامپایلر نمی‌تونه این کد رو بخونه و حالا کار cout، این دستور میتونه یه محتوایی رو روی صفحه برای ما چاپ کنه که در اینجا رشته Hello World! رو برای ما چاپ میکنه و اون endl آخر هم مخفف endline هست یعنی بعد از چاپ محتوای cout برو به خط بعد.&lt;&lt; ‌: این دوتا هم قسمت های مختلف خروجی رو به هم می‌چسبونن مثلا:cout &lt;&lt; &quot;Hello &quot; &lt;&lt; &quot;World!&quot; &lt;&lt; endl;       --&gt; Hello World!
cout &lt;&lt; &quot;Hello World!&quot; &lt;&lt; endl;               --&gt; Hello World! فکر کنم باکد بالا کاربردشون رو متوجه شدید.خط ششم: این خط مقدار ۰ -صفر- رو به تابع خودش (تابعی که این کد داخلشه) بر میگردونه که اینجا تابع main() هست. در مورد کاربردش بعدا میگیم.اما الان میریم سراغ خط دوم: توی کامپایلر g++ و بعضی از کامپایلرای دیگه ما باید قبل از دستورات از std استفاده کنیم به عنوان مثالstd::cout &lt;&lt; &quot;Hello World!&quot; &lt;&lt; endl; حالا برای این که کارمون راحت تر شه و سریع تر بتونیم کد بزنیم این تیکه کد رو اول کدامون مینویسم و در ادامه دیگه لازم نیست از std در ابتدای دستورات استفاده کنیم.نکته: توضیح خط دوم برداشت من از توضیحاتی که توی اینترنت در مورد این دستور تونستم پیدا کنم هست شما با جستوجو توی نت شاید به نتایج بهتری در این مورد برسید که اگه رسیدید خوشحال میشم به منم اطلاع بدید که به این مقاله اضافه کنم.کامپایلخوب کدمون رو توی ادیتور نوشتیم و حالا نوبت به کامپایل میرسه تا بتونیم بعد از اون کد رو اجرا کنیم. (راستی قبل از کامپایل باید برنامه رو سیو کنیم.) F8 رو بزنید تا برنامه کامپایل بشه یا از منوی Build گزینه Compile رو انتخاب کنید.اگر کدتون مشکلی نداشته باشه و صحیح نوشته شده باشه باید با Compilation finished successfully مواجه بشید. این تصویر مربوط به قسمت پایین محیط geany هست.اجراحالا نوبت به قسمت جالب اجرای برنامه می‌رسه که قراره سمره کارمون رو اونجا ببینیم.کلید F5 رو بزنید یا اینکه از منوی Build گزینه Execute رو انتخاب کنید، اگر برنامه درست کامپایل شده باشه و مشکلی نباشه توی محیط ترمینال اجرا می‌شه:برناممون با موفقیت اجرا شد.
خوب این قسمت همینجا تموم شد، خوشحال میشم برام کامنت بزارید و پستم روهم لایک کنید.❤️شادباشید.</description>
                <category>علی گلکار</category>
                <author>علی گلکار</author>
                <pubDate>Tue, 09 Apr 2019 22:30:39 +0430</pubDate>
            </item>
                    <item>
                <title>سلکتور های  (css) before &amp; after</title>
                <link>https://virgool.io/@aligolkar/%D8%B3%D9%84%DA%A9%D8%AA%D9%88%D8%B1-%D9%87%D8%A7%DB%8C-css-before-after-wjyblp70llyp</link>
                <description>سلکتور‌های before &amp; after در cssسالام خوب خیلیا که می‌دونن این سلکتورها کارشون چیه ولی من دارم برای اونایی می‌نویسم که نمیدونن اینا کارشون چیه!!خوب حالا کارشون چیه مگه؟خیلی ساده و جالبن، همونطور که از اسمشون معلومه مربوطن به قبل و بعد (محتوای) اون تگی که شما روش اینها رو پیاده میکنید و کاری که دقیقا میکنن اینه که شما میتونید یه متن مثلا به اونا بدین و قبل یا بعد متنایی که این کلاس رو دارن گذاشته شه یا حتی مثلا یه ایکون ?خوب مثل اینکه جالب شد بزارین یه مثال بزنیم:شما فرض کن یه تگ داری به این صورت:&lt;p class=&quot;site&quot;&gt;ویرگول&lt;/p&gt;خوب مثلما خروجش اینه:ویرگولحالا این css رو هم بهش اضافه میکنیم:.test{
    color:black;
}

.test::before{
    content: &#039;وبسایت&#039;;
}خوب اتفاقی که اینجا میفته اینه که هرجا اون کلاس test رو بزارید قبل از محتواش یه - وبسایت - اضافه می‌کنه و اینو نشون میده:وبسایتویرگولالبته مشکل سرهم نوشتن رو میشه با یه دونه &#x27;space&#x27; حل کرد یعنی:.test::before{
    content: &#039;وبسایت &#039;;
}سلکتور after هم دقیقا همین کارو انجام میده منتها بعد از محتوای تگتون گذاشته می‌شه مثلا اگه داشته باشیم:.test::after{
    content: &#039; بلاگ&#039;;
}این خروجی رو بهمون میده:ویرگول بلاگحالا اگه خواستید یه icon بزارین باید از طریق unicode اونو اضافه کنید یعنی اینجوری:.test::before{
    content: &#039;\f10e&#039;;
    font-family: &quot;Font-Awesome&quot;;
    font-weight: 900;
}البته شما میتونید از فونت ایکون های دیگه هم استفاده کنید استایل هم میتونین بدین که خیلی چیز جالب تری هم میشه مثل این نمونه: https://codepen.io/aligolkar/pen/MLVYwV اومدیم از طریق سلکتور before و after بهشون بکگراند ویرگول دادیم که چیز جالبی شده در کل اگه دوست داشتید میتونید ازش استفاده کنید کدش آزاده (من خودمم از یه جای دیگه کپیش کردم ?)درضمن یه نکته مهم‌: حتما سلکتورتون باید محتوا (content) داشته باشه در غیر این صورت اجرا نمیشه!اگرم میخواین سلکتورتون فقط استایل باشه و متن یا ایکون نمیخواین بزارین بتاید اینطوری بنویسید:    content: &#039;&#039;;خوب اینم از این من برم بگیرم بخابم شبتون خوشالبته نصفه شبتون خوش</description>
                <category>علی گلکار</category>
                <author>علی گلکار</author>
                <pubDate>Sun, 10 Feb 2019 02:55:02 +0330</pubDate>
            </item>
                    <item>
                <title>او گنوم شل اکستنشن نام دارد!</title>
                <link>https://virgool.io/@aligolkar/%D8%A7%D9%88-%DA%AF%D9%86%D9%88%D9%85-%D8%B4%D9%84-%D8%A7%DA%A9%D8%B3%D8%AA%D9%86%D8%B4%D9%86-%D9%86%D8%A7%D9%85-%D8%AF%D8%A7%D8%B1%D8%AF-thzyev4gu93m</link>
                <description>سالاممن چند وقتیه که خیلی تو ویرگول می‌پِلِکَمْ (می‌چرخم) و به دلیل علاقه زیادی که به نوشتن دارم (نوشتن هر چیزی حتی چَرت و پَرت) - اَاِاُ هم گذاشتم که درست تلفظ کنید ?? - همیشه دوست داشتم که این گوشه موشه هاش یه وبلاگی برای خودم دست‌و پا کنم و شروع به نوشتن کنم ولی هرچی فکر می‌اومد تو سرم در واقع میشه گفت کاملا چرت بود.امروز پس از کلی کلنجار با خودم به این نتیجه رسیدم که مهم نیست حتما رو یه موضوع ریز کلید کنم من دوست دارم بنویسم پس هر چیزی که توجهم به خودش جلب کرد و حس کردم جالبه رو می‌نویسم ?خوب بریم سر اصل مطلباکستنشن تهرانی چیز ببخشید گنوم اکستنشنخوب اگه شما از گنوم استفاده کرده باشید به احتمال ۸۵٪ در جریانید که گنوم اکستنشن چیه و چطور نصب میشه! اگه می‌دونید اون بیل‌بیلک موستون رو بچرخونید و برید پایین تر (اگه با گوشی هستین هم میتونید انگشتتون رو صفحه بزارین و به سمت بالا بمالین ?? کار سختی نیست در کل!) و قسمت بعد رو بخونید.این GNOME Shell چی هست اصلا؟گنوم شل در واقع چیز خوبیه! میشه گفت یه پوسته یا تابع (function) رابط کاربری برای گنوم هست که از نسخه ۳ به بعد اضافه شد و یه تغییراتی توی رابط کاربری گنوم ایجاد کرده که گنوم رو خیلی باحال تر کرده!حالا GNOME Shell Extensions چیه؟این لامصبا خیلی چیزای یک و به‌درد بخورین و همونطور که از اسمشون مشخصه یه مشت افزونه هستن که با نصبشون امکاناتی به ظاهر دسکتاپتون اضافه میشن، یه چیزین تو مایه‌های همین افزونه های موزیلا و کروم و... که هممون حداقل یکی دوتاش رو نصب داریم رو مرورگرمون و اصلا نگم برات (توصیه میکنم بنا به دلایلی معلوم قبل از شخصی سازی حتما کافور مصرف کنید)اگه بخوام چندتا مثال بزنم از کاربردشون میتونم اشاره کنم به هیچی ? گفتم اگه بخوام کی گفته می‌خوام مثال بزنم حالا، خودتون برید نصب کنید! میفهمید چیهدر ضمن اکستنشن های گنوم رو کاربرا میسازن پس ۱۰۰٪ چیزای به درد بخورین که نیاز بقیه کاربرا رو هم میتونن برطرف کنن!نصب اکستنشن گنوم شل اکستنشنچه اکستنش تو اکستنشنی شد ?خوب برای نصب افزونه‌ها (اکستنشن ها) شما دو راه دارین یکی این که اونهارو از این آدرس انتخاب و دانلود کنید:extensions.gnome.orgراه بعدی هم اینه که با نصب افزونه گنوم شل روی مرورگرتون به صورت مستقیم از خود سایتش نصب کنید!?خوب راه اول واقعا راه احمقانه ایه و وقتمون رو تلف می‌کنه پس مستقیم میریم دنبال راه دوم:نصباول از همه وارد سایتش شید پیشنهاد میکنم با موزیلا برید. لینکش رو بالاتر گذاشتمیه آلرت آبی رنگ بالای سایت میاد که بهتون میگه برای کنترل گنوم شل اکستنشن از همین سایت میتونید افزونه‌ش رو روی مرورگرتون نصب کنید.خوب روی Click here to install browser extension کلیک کنید تا پیغام نصبو نشون بده و Allow کنید بعد از دانلود روی Add کلیک کنید! (یه جوری دارم توضیح میدم مهسا ۳ ساله از گلابستون هم میتونه انجام بده)خوب به همین سادگی نصب شد حالا بریم مرحله بعد (اون پاهه که بالا سمت راسته عکسه) نصب اکستنشن های گنوم شل اکستنشنبرای نصب اکستنش ها می‌تونید با کلیک روی اسمشون و ورود به صفحه‌شون اونارو نصب کنید برای مثال ما میریم سراغ نصب افزونه تقویم فارسی:افزونه تقویم فارسیخوب هممون اون بیل بیلک بالای گنوم رو می‌شناسیم که کارش نشون دادن تاریخ و ساعته منتها میلادی نشون میده ??‍♂️ باید چه کرد؟افزونه Persian Calendar اومده که قوقا کنه نه تنها روز و ماه و سال رو نشون میده بلکه مناسبت هل رو هم نشون میده ? Persian Calendar رو سرچ کنید و روی تنها نتیجه موجود کلیک کنید. سمت راست صفحه یه دکمه بیل‌بیلکی هست که با فشردنش افزونه فعال و غیر فعال می‌شه پس بفشارینش یه آلرت نشون میده و بعد از این که تایید کردین شروع به نصب می‌کنه وقتی نصب شد توی تاپ بار بالای دسکتاپتون یه عدد ضاهر میشه که میگه امروز چندمه، تازه روش کلیک کنید جالب ترم میشهدرضمن با زدن اون چرخ دنده‌هه هم میتونید بیشتر شخصی سازیش کنین ??توی نت و خود سایت سرچ کنید چیزای خیلی باحالی هست برای نصب مثل:topicon plusopen WeatherDash to Panel Dash to Dockclipboard indicatorCoverflow Alt-TabDrop Down Terminal و چیزای جالب دیگهتامامخوشحال میشم کامنتاتون رو این پایین بنویسین ?برگرفته از ویکی پدیای کبیر و صفحه اکستنش گنوم شل</description>
                <category>علی گلکار</category>
                <author>علی گلکار</author>
                <pubDate>Tue, 22 Jan 2019 01:42:43 +0330</pubDate>
            </item>
            </channel>
</rss>