<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های مهدی گودرزی</title>
        <link>https://virgool.io/feed/@mahdigoodarzi123</link>
        <description>یه برنامه نویس جونیور که اینجا مشکلاتی که داشته و داره و کلید حل اون مشکلات رو اینجا مینویسه</description>
        <language>fa</language>
        <pubDate>2026-06-07 06:33:50</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/1084493/avatar/ciZF4r.jpeg?height=120&amp;width=120</url>
            <title>مهدی گودرزی</title>
            <link>https://virgool.io/@mahdigoodarzi123</link>
        </image>

                    <item>
                <title>کانفیگ میل سرور iRedMail بر اوبونتو سرور</title>
                <link>https://virgool.io/@mahdigoodarzi123/%DA%A9%D8%A7%D9%86%D9%81%DB%8C%DA%AF-%D9%85%DB%8C%D9%84-%D8%B3%D8%B1%D9%88%D8%B1-iredmail-%D8%A8%D8%B1-%D8%A7%D9%88%D8%A8%D9%88%D9%86%D8%AA%D9%88-%D8%B3%D8%B1%D9%88%D8%B1-vzje4xveqrhw</link>
                <description>خوب سلام و عرض ادب خدمت همگی دوستان و خوانندگان گرامی. اول از همه یه عذرخواهی بکنم بابت غیبت طولانیم. توی این پست میخوام در مورد کانفیگ یه میل سرور شخصی روی سرور های شخصیتون صحبت کنم.اول یذره بریم با انواع میل سرور ها آشنا شیم(چون زیادن همه رو نمیگم)1: exchange2: postfix3: exim4: iRedMailاز بین اینا من آخری رو انتخاب کردم. شاید با خودتون بگید چرا؟ به این دوستان باید بگم سوال خیلی خوبی پرسیدید. چون دوست داشتم:)دیگه وقت تلف نکنیم بریم سراغ اصل ماجرا. ما اینجا از اوبونتو سرور 2022 استفاده کردیم. شما میتونید هر کار دیگه ای خواستید بکنید. به هر حال آدمیزاد اراده آزادی دارهاول آپدیت کنید(اینو اول کار بگم که من کلا از mail.erfan.local استفاده کردم. قاعدتا شما باید تغییرش بدید به دومین خودتون)sudo apt updatesudo apt upgradeخوب حالا که این پروسه طولانی تموم شد این دستور رو بزنید:hostnamectl set-hostname mail.erfan.localاین دستور میاد اسم هاست شما رو عوض میکنه. اما قبلش شما باید DNS هاتونو ست کرده باشید. مثلا من اینجا ست کردم که mail.erfan.local = 192.168.159.133  که آدرس ماشین مجازی من هستش.حالا باید به خود اوبونتو بفهمونید که این ادرس mail.erfan.local میشه خودش!sudo nano /etc/hostsصفحه باز شده رو طبق این عکس تنظیم کنید:حالا اگر دستور hostname -f رو بزنید باید اسمی که بالاتر به عنوان نام هاست ست کردید نمایش داده بشهحالا باید پروژه iRdMail رو کلون کنیدgit clone https://github.com/iredmail/iRedMailاین میاد برای شما این برنامه رو از گیتهاب دانلود میکنه.حالا میدونید باید چیکار کنید؟ آفرین lsبعدش یه cd میزنید به پوشه iRedMailاینجا هم یه ls بزنید ببینید چی به چیهحالا این دستور رو بزنید برای اجرایی کردن برنامه iRedMail.shchmod +x iRedMail.shیه همچین اتفاقی باید بیفته:میبینید؟ رنگش سبز سیدی شد. هزار سبحان الله از این لینوکس خارق العاده!!حالا چی؟ هیچی رانش میکنیsudo ./iRedMail.shمیره برای نصب. این وسط یه چند تا سوال هم ازتون میپرسه. اونایی که شاید گیج کننده باشن رو اسکرین گرفتم. بر همین اساس پیش بریدتو عکس پایینی باید پسورد بدید(من دادم ۱۲۳ شما هم بدید ۱۲۳)ایتو این عکس باید دومین خودتون رو بدون هیچ ساب دومینی بنویسیددوباره پسورد امنیتی:اینجا هم دو تا Y ناقابل اضافه کنید.تبریک! شما با موفقیت این میل سرور رو نصب کردید. یه همچین صفحه ای براتون میاد که باید اون یوزرنیم و پسورد رو یادداشت برداری نمایید. اون web admin panel رو هم داشته باشد که از اونحا یوزر و ... اضافه میکنید.حالا اگر وارد صفحه ای که اون بالا اومده بیاید میبینید که 👍این به چه دلیلیه؟ ریبوت! یه ریبوت بزنید و تموم!برای استفاده از صفحه وب دریافت و ارسال ایمیل هم به https://mail.erfan.local مراجعه نمایید.لتفن به عادرس 192.168.159.133 دیداس نزنیدبه چیز آمد این چیز و چیز همچنان باقیستبا تشکر.</description>
                <category>مهدی گودرزی</category>
                <author>مهدی گودرزی</author>
                <pubDate>Sun, 24 Mar 2024 21:07:02 +0330</pubDate>
            </item>
                    <item>
                <title>نصب آپاچی بر ابونتو</title>
                <link>https://virgool.io/@mahdigoodarzi123/%D9%86%D8%B5%D8%A8-%D8%A2%D9%BE%D8%A7%DA%86%DB%8C-%D8%A8%D8%B1-%D8%A7%D8%A8%D9%88%D9%86%D8%AA%D9%88-cwoy0it6nbsc</link>
                <description>سلام عرض می‌کنم خدمت همگی. تو این پست ویرگول می‌خوام خیلی ساده بگم که چجوری اپاچی رو روی یک سرور ابونتویی(سروری یا دسکتاپی) ران کنید. ما اینجا از یه ابونتو دسکتاپی استفاده می‌کنیم. مشخصاتشو می‌تونید تو عکس زیر ببینید.توی لینوکس اولین کاری که بعد از بالا اوردن یه توزیع می‌کنید اینه که پکیجاشو اپدیت کنید. این کار رو با دستور زیر می‌تونید انجام بدید.sudo apt updatesudo apt upgradeبعد از اینکه این دو تا کامند کامل انجام شدن حالا نوبت کارای اصلیه.اول از همه میریم آپاچی رو نصب کنیم. برای نصب آپاچی دستور زیر رو بزنید.sudo apt install apache2حالا که آپاچی نصب شده می‌تونید با آیپی دستگاهتون صفحه پیش‌فرض آپاچی رو ببینید. برای اینکه این صفحه رو ببینید اول باید این پکیج رو نصب کنید.sudo apt install net-toolحالا برای اینکه آیپیتون رو بدست بیارید می‌تونید از دستور زیر استفاده کنید.ifconfigبعضی از مواقع شما از ابونتو توی یک ماشین مجازی استفاده می‌کنید و می‌خواید اون صفحه پیش فرض رو توی ویندوزتون ببینید، برای اینکار باید حواستون باشه که بین ماشین مجازی و ویندوزتون ارتباطی هست. قاعدتا باید توی یک رنج باشن تا بتونن ارتباط بگیرن. بعدش میتونید آیپی اوبونتوتون رو از ویندوزتون پینگ بگیرید. اگر نشد باید فایروالتون رو خاموش کنید با دستور زیر.sudo ufw disableحالا می‌تونید  با استفاده از وارد کردن آیپیتون توی مرورگر از صفحه پیش فرض آپاچی دیدن فرماییدبرای عوض کردن دایرکتوری به اون آدرسی که صفحه پیش فرض آپاچی هست باید این دستورو وارد کنید.cd /var/www/htmlحالا برای اینکه بتونید ببینید چه فایل هایی در اینجا هست این دستور رو بزنید.lsباید یک فایل اینجا باشه و اون فایل index.html  نام داره.حالا ما می‌خوایم یک دایرکتوری جدید ایجاد کنیم  و اسم این دایرکتوری رو contact بزاریم. برای اینکار باید دستور زیر رو وارد کنیدsudo mkdir contactحالا اگر لیست فایل های موجود در دایرکتوری رو ببینید (با استفاده از دستور ls ) میبینید که دایرکتوری contact به لیست اضافه شده. برای تغییرات وارد این دایرکتوری می‌شیمcd contactبرای ایجاد یک فایل کار های زیادی می‌شه انجام داد. یکی از اینکار های استفاده از یک text editor هستش. Vim یک text editor مشهور هست که برای سیستم های لینوکسی به صورت وسیع کاربرد دارد.برای استفاده از vim  باید دستور زیر رو بزنیدsudo vi index.htmlبا اینکار یک صفحه پر از خالی براتون باز میشه اما شما هیچکاری نمیتونید داخلش انجام بدید. برای شروع به کد زدن داخل vim  ابتدا باید a رو وارد کنید. الان میتونید هر چیزی رو که بخواید بنویسید. در این سناریو یک قطعه کد html به دلخواه خودتون بنویسید. برای خارج شدن از vim  هم شما باید یک دستور رو وارد کنید. اون دستور به این شکله:Esc button + ‘:’ + ‘wq’با این دستور چیز هایی که نوشتید سیو میشه و شما از محیط ویم خارج می‌شید.حالا دوباره با دستور ls می‌بینید که یک فایل به اسم index.html  براتون ایجاد شده.برای اینکه بتونید صفحه دلخواهتون رو توی مرورگر مشاهده کنید میتونید ایپی خودتون رو بزنید مثل زیر192.168.***.***/contactو یا اینکه از ایپی loopback  استفاده کنید مثل زیر127.0.0.1/contactتبریک می‌گم شما با موفقیت تونستید یک سایت رو با استفاده از وب سرور آپاچی بالا بیارید.قاعدتا خیلی کار ها می‌تونستیم انجام بدیم که انجام ندادیم. من اینو برای کسایی نوشتم که دانش لینوکسیشون بالا نیست و به نظرم همینقدر کفایت می‌کنه.</description>
                <category>مهدی گودرزی</category>
                <author>مهدی گودرزی</author>
                <pubDate>Sat, 12 Aug 2023 13:11:19 +0330</pubDate>
            </item>
                    <item>
                <title>ران کردن پروژه جنگو بر روی ngrok</title>
                <link>https://virgool.io/@mahdigoodarzi123/%D8%B1%D8%A7%D9%86-%DA%A9%D8%B1%D8%AF%D9%86-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D8%AC%D9%86%DA%AF%D9%88-%D8%A8%D8%B1-%D8%B1%D9%88%DB%8C-ngrok-kjgo4zs8wvrf</link>
                <description>قبل از هر چیزی سلام عرض میکنم خدمت همگی. من چند وقت پیش میخواستم پروژه ام رو به کسی نشون بدم ولی متاسفانه ایشون در دسترس نبودن. راهکار هایی که به ذهنم رسید اینا بود:1 فیلم بگیرم و برای اون شخص ارسال کنم2 هاست بخرم و رو هاست پروژه رو بیارم بالا3 استفاده از ngrokراه حل یک واقعا به شدت lame بود?. راه حل دو هم هزینه داشت. راه حل 3 تقریبا همون راه حل 2 بود با این تفاوت که رایگان بود. اگر میخواید در مورد ngrok بیشتر بدونید برید اینجاواقعا کار سختی نیست ولی تصمیم گرفتم در موردش بنویسم. اول از همه از اینجا ngrok رو دانلود کنید و توی سایتش ثبت نام کنید(برای ویندوزی ها)بعد از دانلود وارد پوشه ای بشید که دانلودش کردید و پاورشلتونو باز کنید(کامند پرامپت یا ترمینال) بعد با این دستور فعال کنیدش که بعدا به مشکل نخوریدngrok.exe config add-authtoken توکنتونحالا باید این کامند رو بزنید داخل پاورشلngrok.exe http 8000یه همچین صفحه ای میاد بالااون قسمتی که نوشته forwarding رو کپی کنید. این آدرس، آدرس سایتتون قراره باشه. حالا وارد settings.py پروژه جنگوتون بشید. بالای INSTALLED_APPS اینا رو اضافه کنید.ALLOWED_HOSTS = [&#039;127.0.0.1&#039;, &#039;localhost&#039;, &#039;لینکی که گفتم کپی کنید&#039;]CSRF_TRUSTED_ORIGINS = [&#039;https://لینکی که گفتم کپی کنید&#039; , &#039;http://لینکی که گفتم کپی کنید&#039;]اگر نفهمیدین این قسمتا چیکار میکنه به اسم متغیر ها دقت کنید.اگر چیزی رو جا ننداخته باشم الان میتونید با همون لینکFORWARDING وارد سایتتون بشید. قاعدتا باید پروتکل رو هم قبلش بزارید(HTTPS) البته اینم بگم که نیازی نیست پورت رو بنویسید. حالا خیلی راحت اپلیکیشنی که درست کردید رو بدید بقیه هم تست کنن.ممنون که مطلب منو خوندید. اگر دوست داشتید یه لایک و کامنت هم منو مهمون کنید.</description>
                <category>مهدی گودرزی</category>
                <author>مهدی گودرزی</author>
                <pubDate>Sat, 10 Jun 2023 16:47:59 +0330</pubDate>
            </item>
                    <item>
                <title>بازار کار پایتون در ایران(تجربه های من)</title>
                <link>https://virgool.io/@mahdigoodarzi123/%D8%A8%D8%A7%D8%B2%D8%A7%D8%B1-%DA%A9%D8%A7%D8%B1-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%AF%D8%B1-%D8%A7%DB%8C%D8%B1%D8%A7%D9%86%D8%AA%D8%AC%D8%B1%D8%A8%D9%87-%D9%87%D8%A7%DB%8C-%D9%85%D9%86-ksvdgueaanvv</link>
                <description>?سلام و عرض ادب خدمت همگی. خوب، اگر اومدید داخل این پست تا با بازار کار پایتون تو ایران آشنا شید بهتون هشدار میدم. قراره کلا نا امید شید. نمیگم پایتون زبان بدیه. نه. اتفاقا خودم یکی از طرفدارای سرسخت پایتونم. آماااا(اینو نگه دارید تا بگم چرا)اگر با زبان پایتون آشنا باشید میدونید که یکی از مهم ترین بخش های این زبان که عملا کار بدون این بخش خیلیییییییی سخته pip هستش. اما pip چیه؟(کلا دیگه به جای pip مینویسم پیپ)پیپ یه ابزاریه برای مدیریت کردن پکیج هایی که بقیه مردم مینویسن. یعنی به جای اینکه شما بخوای چرخ رو از اول اختراع کنی، میتونی پکیج هایی که مردم لطف کردن و نوشتن(به لطف گیتهاب و بحث اوپن سورس و ...) رو از اینجا دانلود کنی. کار باهاش هم خیلی راحته. برای کار با پیپ هم باید یه تیک رو بزنید وقتی دارید پایتون رو نصب میکنید. برای نصب پیکیج ها هم خیلی راحت میتونید از دستور زیر استفاده کنید:pip install package_nameدیدید چقدر راحته؟ کلا پایتون همینقدر راحتهحالا میرسیم به اون بخش آمااااما داریم تو مملکت گل و بلبل زندگی میکنیم. از وقتی شیر اینترنتو بستن پیپ هم نمیتونیم استفاده کنیم:)راه حل داره؟ بله داره ولی لقمه رو باید چهار دور، دور خودتون بچرخونید. با یه گوگل کردن میتونید بفهمید راهش چجوریه.اصلا درک نمیکنم اون مدیری که دستور بستن شیر پیپ رو داده داشته به چی فکر میکرده دقیقا. چجوری داشته فکر میکرده. بعد بعضی از دوستان به ظاهر محترم میان میگن همه دنیا اینطورین. خوب اخه عزیز دل، شما چه میفهمی از سنگ هایی که جلو راه برنامه نویساس؟؟؟ حالا دیگه امنیت کارای محترم که کلا با بدبختی کار میکنن. چند وقت پیش هم قضیه بستن اوپن وی پی ان باعث شده بود خیلیا نتونن تو بزرگترین CTF دنیا شرکت کنن.شما وی پی ان نداشته باشی عملا هیچکاری رو نمیتونی جلو ببری(یا dns بزنی). تازه شانس اوردیم خود pypi رو فیلتر نکردن.روی صحبتم با مسئولین نامحترمه! شما دارید تمام افراد فنی کامپیوتر رو فراری میدید. حتی کسایی که میگن میمونم وطنمو میسازن هم نمیتونن دیگه! حالا اینا به کنار! طرف از برنامه نویس ارشد گوگله و از همه چی زده و اومده ایران. نظرت کاملا شخصیه ولی خوب دوست عزیز، پیپ فیلتره! نظرت عوض نشد؟اگر میخواید بیاید سمت پایتون اینو بدونید که مهم ترین ابزاری که تو پایتون اسفاده میشه اختلال داره تو ایران. اگر میتونید برید گو یاد بگیرید(البته 4 روز دیگه میزنن گیت هابم فیلتر میکنن?)(اپدیت: اینم مثل اینکه ما رو تحریم کرده. از خارج و داخل داریم سرویس میشیم)و میرسیم به وزیر ارتباطات. جناب زارع پور، بشین با اسپید تست ببین پیپ فیلتره یا نه!!! اصلا اون نه، ببین با اسپید تست میشه اختلالی که روی سایت خود پایتونه رو دید یا نه!!!اینم فقط برای اینکه نگید دروغ میگمقبل از پست کردن هم بگم که جان جدتون ماستمالی نکنید. از تیکه های بامزتون هم استقبال نمیکنم. این موضوع هیچ شوخی‌ای نداره.</description>
                <category>مهدی گودرزی</category>
                <author>مهدی گودرزی</author>
                <pubDate>Sat, 08 Apr 2023 09:27:29 +0330</pubDate>
            </item>
                    <item>
                <title>ربات اینستاگرام با پایتون</title>
                <link>https://virgool.io/hamyar-instagram/%D8%B1%D8%A8%D8%A7%D8%AA-%D8%A7%DB%8C%D9%86%D8%B3%D8%AA%D8%A7%DA%AF%D8%B1%D8%A7%D9%85-%D8%A8%D8%A7-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-n0johosjsoux</link>
                <description>سلام و عرض ادب خدمت تمام ویرگولی های عزیزمن مهدی گودرزی هستم و این اولین پستم توی ویرگوله بعد از حدود 5 ماه. می‌خوام تو این پست در مورد یکی از برنامه هایی که تو این چند وقته نوشتم، صحبت کنم.راستش من از اولین روزی که پایتون رو یاد گرفتم می‌خواستم که یه ربات اینستاگرام بنویسم ولی یا سوادشو نداشتم و یا حوصلشو نداشتم. یه چند باری شروع کردم و تا یه جاهایی پیش رفتم ولی بعدش ولش می‌کردم. اما این دفعه فرق داشت. این دفعه یکم بیشتر بردم جلو و ولش کردم:)برای نوشتن ربات اینستاگرام پکیج های زیادی به صورت آماده هست( برای نمونه instabot) ولی من می‌خواستم از پایه خودم رباتمو بنویسم. پس می‌تونستم از selenium استفاده کنم.برای نصب سلنیوم می‌تونید از دستور زیر استفاده کنید.pip install seleniumبعد از نصب این پکیج، باید این پکیج ها رو فراخوانی کنید.from time import sleep
from selenium import webdriver
import osقبل از اینکه کار اصلیمون شروع بشه، باید درایور مخصوص خودتونو هم دانلود کنید تا مرورگرتون باز بشه(یادتون باشه حتما درایورتون با ورژن مرورگرتون هماهنگ باشه). من خودم از کروم درایور استفاده کردم(دلیل خاصی نداشتم)بعد از دانلود درایور دلخواهتون و جایگذاریش توی مسیرتون، این قطعه کد رو باید استفاده کنیدpath = os.path.dirname(os.path.abspath(__file__))address = os.path.join(path , &#039;chromedriver.exe&#039;)این قطعه کد میاد و درایورتون رو شناسایی می‌کنه( البته نبودنش هم فرقی به حالتون نداره)browser = webdriver.Chrome()این قطعه کد میاد و یه مرورگر براتون تعریف می‌کنه(دوباره می‌گم، من از کروم استفاده کردم، شما می‌تونید از هر چیز دیگه ای استفاده کنید)بعدش ادرس اینستاگرام رو به این صورت وارد کنید تا سلنیوم براتون سرچش کنهbrowser.get(&amp;quothttps://www.instagram.com&amp;quot)sleep(5)این قطعه کد هم شما رو وارد صفحه اینستاگرام می‌کنه. بینشون هم یه sleep بذارید که مشکلی پیش نیاد!حالا می‌تونیم که یوزرنیم و پسورد رو وارد کنیم، اماااا!برای وارد کردن یوزرنیم و پسورد باید به برنامه بفهمونید که این فیلد ها در کجای صفحه قرار دارند. می‌تونید از روش های مختلفی استفاده کنید، مثلا اسم کلاس یا xpath یا ...، اینش بستگی به شما و هدفتون داره، من اکثرا از xpath استفاده کردم.حالا باید بپرسید که اینا رو از کجا در بیاریم؟شما می‌تونید توی صفحتون راست کلیک کنید و inspect رو بزنید.( یا کلید ترکیبی ctrl + shit + i). بعدش این دکمه رو می‌زنید و فیلدی که میخواید رو انتخاب می کنید.برای مثال فیلد یوزر نیم یه همچین چیزیه:حالا روش کلیک می‌کنید و xpath رو کپی می‌کنید. و از کد زیر استفاده می‌کنید.UsernameEntry = browser.find_element_by_xpath(&#039;//*[@id=&amp;quotloginForm&amp;quot]/div/div[1]/div/label/input&#039;)UsernameEntry.send_keys(یوزر نیم شما)اینجا اومدیم و از browser متد find_element_by_xpath رو صدا زدیم و xpath کپی شده رو اینجا پیست کردیم. بعدش هم از متد send_keys استفاده کردیم و یوزرنیم رو فرستادیم به فیلد دلخواهمون.PasswordEntry = browser.find_element_by_xpath(&#039;//*[@id=&amp;quotloginForm&amp;quot]/div/div[2]/div/label/input&#039;)PasswordEntry.send_keys(&amp;quotpassword&amp;quot)همون کار هایی که با یوزرنیم انجام دادیم رو با پسورد هم انجام دادیم.(بینشون sleep هم بذارید!)حالا باید یه کاری کنیم که روی دکمه لاگین کلیک کنه.loginbutton = browser.find_element_by_xpath(&#039;//*[@id=&amp;quotloginForm&amp;quot]/div/div[3]/button&#039;)loginbutton.click()دوباره اومدیم و از browser متد find_element_by_xpath رو صدا زدیم و xpath دکه لاگین رو پیست کردیم. این دفعه نمی‌خوایم که چیزی رو توی فیلدی قرار بده و می خوایم روی دکمه کلیک کنه پس باید از متد click استفاده کنیم و تمام!کل کد رو میتونید پایین مشاهده کنید.from time import sleep 
from selenium import webdriver 
import os

path = os.path.dirname(os.path.abspath(__file__))
address = os.path.join(path , &#039;chromedriver.exe&#039;)

browser = webdriver.Chrome()
browser.get(&amp;quothttps://www.instagram.com&amp;quot)sleep(5)
UsernameEntry = browser.find_element_by_xpath(&#039;//*[@id=&amp;quotloginForm&amp;quot]/div/div[1]/div/label/input&#039;)UsernameEntry.send_keys(&amp;quotیوزر نیم شما&amp;quot)
PasswordEntry = browser.find_element_by_xpath(&#039;//*[@id=&amp;quotloginForm&amp;quot]/div/div[2]/div/label/input&#039;)PasswordEntry.send_keys(&amp;quotپسورد شما&amp;quot)
loginbutton = browser.find_element_by_xpath(&#039;//*[@id=&amp;quotloginForm&amp;quot]/div/div[3]/button&#039;)loginbutton.click()خوب الان ما تونستیم یه برنامه ای بسازیم که می‌تونه داخل اکانت شما لاگین کنه و می‌تونیم باهاش کار های مختلفی انجام بدیم. من خودم تونستم تا یه حد معقولی ببرمش جلو.اگر کار هایی که اینجا کردیم رو فهمیده باشد می‌شه گفت می‌تونید بقیه کار ها رو هم خودتون بکنید ولی اگر باز هم نیاز به کمک داشتید می‌تونید از کد من استفاده کنید که تو این آدرس هستش:کد من در گیتهابباز هم می‌گم من نتونستم خیلی کاملش کنم و خیلی چیز های دیگه کم داره ولی اگر خواستید شما می‌تونید کاملش کنید.در آخر هم ممنون می‌شم اگر این پست و لایک کنید و به رباتی که نوشتم تو گیت هاب استار بدید.با تشکر، مهدی گودرزی</description>
                <category>مهدی گودرزی</category>
                <author>مهدی گودرزی</author>
                <pubDate>Mon, 28 Mar 2022 18:16:21 +0430</pubDate>
            </item>
                    <item>
                <title>بهترین دیسترو های لینوکس برای مهاجرت از ویندوز</title>
                <link>https://virgool.io/@mahdigoodarzi123/%D8%A8%D9%87%D8%AA%D8%B1%DB%8C%D9%86-%D8%AF%DB%8C%D8%B3%D8%AA%D8%B1%D9%88-%D9%87%D8%A7%DB%8C-%D9%84%DB%8C%D9%86%D9%88%DA%A9%D8%B3-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%85%D9%87%D8%A7%D8%AC%D8%B1%D8%AA-%D8%A7%D8%B2-%D9%88%DB%8C%D9%86%D8%AF%D9%88%D8%B2-ic5gzingrmpw</link>
                <description>سلام و عرض ادب خدمت تمام ویرگولی های عزیزمن مهدی گودرزی هستم و میخوام تجربیاتم رو در مورد انتخاب یک لینوکس مناسب جایگزین ویندوز بگمفکر مهاجرت از ویندوز وقتی به ذهنم رسید که توانایی مهاجرت از ویندوز 10 به ویندوز 11 رو نداشتم(به دلیل مشکلات سخت افزاری)و خوب قاعدتا بعد از چند سال مایکروسافت قراره پشتیبانی از ویندوز 10 رو قطع کنه و این اصلا چیز خوبی نیست!خوب اول از همه قاعدتا باید به فکر اوبونتو و مشتقاتش بیفتیم(زوبنوتو،کوبونتو،میت و ..)راستش من زیاد با اوبونتو راحت نیستم،اونم به دلایل یجورایی میشه گفت شخصی.البته ویدیویی که استالمن داده بود بیرون و اوبونتو رو به عنوان یک جاسوس افزار اسم برده بود هم دخیل بود در این راحت نبودنم(اینجا).قبلا هم موقع تست کردن درس هام خیلی با ایپی گرفتن اوبونتو مشکل داشتم و این یکی دیگه از دلایلم بود.پس تصمیم گرفتم اوبونتو رو بیخیال بشم و برم سمت مشتقاتشزوبونتو:زوبونتو رو خیلی شنیده بودم در موردش.یکی از دلایلم بابت تست زوبونتو استفاده کردنش از xfce بود و این خیلی برای من مهم بود چون خیلی کار رو سبک تر میکرد.ولی هنوز هم بعضی مشکلات اوبونتو رو داشتبرای مثال بعضی از دستورات رو توی ترمینال اجرا نمیکرد و این واقعا اعصاب خورد کن بودتصمیم گرفتم که تا اوبونتو دیدم جیغ بزنم و در برم،که کار کاملا اشتباهی کردم(جلوتر بهتون میگم چرا)دبیان:والا این توزیع رو اصلا نمیخواستم امتحان کنم.نمیدونم چرا همینطوری احساس خوبی بهش نداشتم ولی خوب ما تو کار کامپیوتر اصلا نباید احساسات رو درگیر کنیم  : )به هر حال نصبش کردم.ولی هر کاری میکردم متاسفانه کرافیک نداشت.یعنی محیط کامندی بود.یکم دقت کردم و متوجه شدم ایزوی دبیان مینی رو دانلود کردم و اون لحظه حس خیلی بدی داشتم : ))) .بعد از چند روز بالاخره وقت کردم تا نسخه گرافیکیش رو دانلود کنم.این توزیع بر خلاف توزیع های دیگه خیلی بیش از حد ساده بود.اگر اشتباه نکنم حتی libre office هم داخلش نصب نبود(البته مطمئن نیستم).و قاعدتا از این توزیع هم دلسرد شدمParrot os:این توزیع رو اصلا نمیخواستم امتحان کنم.محض کنجکاوی و این که کنار کالی لینوکسم یک سیستم عامل امنیتی دیگه داشته باشم اون رو در ماشین مجازیم نصب کردم.ولی موقع گشت و گذار در این سیستم عامل متوجه شدم میتونه جایگزین خیلی مناسبی باشه.چون ظاهری بسیار زیبا داره و ابزار های بسایر زیادی برای برنامه نویسی یا تست نفوذ داره.برنامه های libre office بر روش نصبه،ارور های ترمینال اوبونتو رو هم ندارهبا اینکه توزیع نسبتا جدیدی هست باگ خیلی کمی داره،زیرمجموعه بدون واسطه دبیان هستش،خلاصه اینکه خیلی باهاش حال کردم.اصلا باورم نمیشد که همچین سیستم عاملی رو در نظر بگیرم برای سیستم عامل اصلیم،اما خوب دلیلی هم نمیشد که بقیه رو امتحان نکنمآرچ:آرچ رو خیلی دوست داشتم امتحان بکنم،ولی همینطوری که از من پیداست من یک ادم تنبل هستم و نصب ارچ خیلی سخت بود برامحتی به گفته خود لینوس توروالدز نصب اوبونتو براش سخت بوده و نصب نکرده.آرچ که دیگه جای خود دارد.به خاطر،از دور،طریقه نصبش رو دیدم و جیغ زنان فرار کردمفدورا:فدورا رو خیلی دوست داشتم سریعتر امتحان کنم ولی به دلایلی دلمو زداولیش این بود که یکی از دوستان توییتریمون برنامه نویس تیم فدورا بوده ولی وقتی فهمیدن که ایرانی هستش از تیم دولوپ فدروا بیرون انداختنش و این به نظر من اصلا با نرم افزار آزاد همخونی نداره.دلیل دیگه هم این بود که اصلا از رابط گرافیکیش خوشم نیومد و تو مرحله نصب پشیمون شدممینت:من از وقتی که به ویندوز ده مهاجرت کردم اصلا با رابط کاربری ویندوز هفت حال نمیکنم.و باید بگم که مینت کاملا شبیه ویندوز هفت بودش و البته اینی که زیرمجموعه اوبونتو بود رو هم نباید کنار بگذاریمکوداچی:اینو یکی از دوستای توییتریم بهم معرفی کرد.راستش وقتی فهمیدم بیسش زوبونتو هستش اصلا خوشم نیومد.ولی باز هم میگم،دلیل نشد که امتحانش نکنم.این توزیع به قدری جذاب بود که واقعا باهاش حال کردم.یک توزیع امنیتی هستش،ولی بر خلاف کالی و پرروت ابزار های امنیتی زیادی نداره و بیس کارش پنهان کردن کاربر در فضای اینترنته.ولی به نطر من به درد نصب شدن به جای سیستم عامل اصلی نمیخوره،چون برای افراد به شدت حرفه ای هستشسنت او اس:خودم از این سیستم عامل خیلی خوشم میومد.ولی یکی از بدترین خبر هایی که شنیدم این بود که از سال 2024 به بعد دیگه پشتیبانی نمیشه.پس این دلیلی بود مبنی بر امتحان نکردنشمانجارو:راستش من اصلا با ردهت بیس ها راحت نیستم،ولی باید بگم این توزیع محشره.واقعا اگر به دنبال یه توزیع امن و بدون دردسر هستید حتما این توزیع رو نصب کنید.این توزیع با اینکه زیرمجموعه آرچ به حساب میاد ولی نصب بسیار ساده ای داره و میز سبکی هم  داره.ولی:ای توزیع با apt یا yum کار نمیکنه و ممکنه یکم اذیتتون کنه برای نصب پکیج ها.مشکل دیگش اینه که متاسفانه این توزیع ظاهری شبیه به ویندوز 7 داره پس به درد من نمیخوره.نرم افزار های libre office بر روی این توزیع نصب نیستن(به طور پیشفرض)اوپن سوزه:این توزیع هم بسیار توزیع خوبیه،هم برای سرور ها،هم برای کاربران عادی.فضای گرافیکی بسیار جذابی داره.میشه گفت جایگزین فوق العاده مناسبی برای سنت او اس هستش و این خیلی خوبه(چون سنت او اس داره به پایانش نزدیک میشه)و البته که نصب فوق العاده آسونی دارهولی:دوباره مثل مانجارو این توزیع   از پکیج منیجر های مختلفی استفاده میکنه که این کار رو یکم سخت میکنهدر کل اگر بخوام انتخاب کنم،احتمال زیاد parrot رو انتخاب میکنم.ولی این کاملا انتخاب شخصی ای هستش.من خودم اون چیز هایی رو که میخواستم توی پرروت پیدا کردم.ولی امکان داره شما توی یک دیستروی دیگه پیدا کنیددر اخر اینکه ممنون میشم این پست رو لایک کنیدادرس گیت هابم رو هم میذارم محض احتیاطاینجا</description>
                <category>مهدی گودرزی</category>
                <author>مهدی گودرزی</author>
                <pubDate>Fri, 15 Oct 2021 17:17:51 +0330</pubDate>
            </item>
                    <item>
                <title>من و انتخاب زبان برنامه نویسی</title>
                <link>https://virgool.io/fboard/%D9%85%D9%86-%D9%88-%D8%A7%D9%86%D8%AA%D8%AE%D8%A7%D8%A8-%D8%B2%D8%A8%D8%A7%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-jfvacc68s3gh</link>
                <description>با سلام عرض خسته نباشید به همه ویرگولی های عزیزمن مهدی گودرزی هستم و این اولین پست ویرگولم هستش و عملا دارم برای خودم مینویسمراستش هدف از این پست ویرگول بیشتر اینه که تجربیات خودم رو در مورد زبان های برنامه نویسی که باهاشون کار کردم بنویسمخب،اولین زبانی که باهاش کار کردم سی پلاس پلاس بود و اولین بار باهاش تو دانشگاه اشنا شدمسی پلاس پلاس واقعا زبان خیلی سختی هستش مخصوصا اگر اولین زبان هم باشه و شما هیچ اشنایی با برنامه نویسی نداشته باشیدالبته که یه استاد خوب میتونه این زبان را بینهایت اسون کنه که خدا رو شکراستادم خوب بود و من ترم یک خیلی سخت کوش بودم(مثل همه ترم اولی ها)و به شدت میخوندم(شما بخون سگ میزدم)البته من تا اواخر ترم یک اصلا کد نزدم!!!و فقط به صورت تئوری مانند،روی کاغذ مینوشتماولین باری که یه کد نوستم رو یادم میاد.یه سلام دنیای ساده بود،اونم تو محیط آبیه توربو سی پلاس پلاس و موفقیت بعد از حدود دو ساعت(اون موقع به گوگل اعتقادی نداشتم)و نوشتن همون چند خط حدود 20 دقیقه برام زمان بردترم دوم توی درس برنامه نویسی پیشرفته هم سی پلاس پلاس داشتیم.اونجا با چهره ی ترسناک این زبان اشنا شدمهنوزم که هنوزه من چگونه نوشتن یه تابع تو سی پلاس پلاس رو بلد نیستمهمون اوایل ترم دو بود که کرونا اومد و دانشگاه ها مجازی شدمنم یه ماه اول هیچ کاری نکردم.دقیقا هیچی!!!!بعدش با خودم گفتم،وقت که دارم بشینم یه زبون جدید یاد بگیرم.کلی گشتم و گشتم تا به پایتون رسیدمحالا میرسیدیم به طریقه یاد گرفتنش:یوتیوب.خداوکیلی انقدر که من از یوتیوب چیز های جدید یاد گرفتم تو 12 سال مدرسه یاد نگرفتماون موقع با سایت هایی مثل تاپلرن و .. اشنا نبودم و هنوز هم با گوگل قهر بودمخلاصه،برای منی که اولین زبونم سی پلاس پلاس بود،پایتون مثل بهشت بودنمونه بارزش توابع توی پایتونه.سینتکس های اولیه پایتون برام خیلی ساده بود و راحت میتونستم بفهممشون،اما،هنوز به درک برنامه نویسی نرسیده بودم(هنوزم مطمئنم نرسیدم چون هر چی بری به تهش نمیرسی)در حدی که نمیتونستم یه سنگ کاعذ قیچی ساده رو کد بزنمترم چهارم بودم که یکی از دوستام بهم گفتش اگر جاوا بلدی بیا به من توی برنامه نویسی پیشرفته کمک کن.منم که بلد نبودم گفتم بذار ببینم چی میشه.رفتم یکم سرچ کردم دیدم اوه اوه،عجب زبون پرکاربردیه،باید یادش بگیرم.پس رفتم سرچامو کردم تا ببینم چی پیدا میکنم.اولیش دوره جاوای تاپلرن بود.از اون شروع کردم ولی بعد از چند قسمت اصلا پشیمون شدم.استادش خیلییییییی بد درس میداد به نظر من.پس رفتم یه دوره دیگه رو از سایت درسمن دانلود کردم ولی چون وسط کار استاد عوض کرده بودم و استاد اولی کلا اعتماد به نفسم رو خراب کرده بود،وسطای کار پشیمون شدم،ولی بازم به اون دوستم در حد خیلی خیلی کم کمک کردم.یعنی یکی از تمریناشو موفق شدم حل کنم.گفتم حالا که استادا خوب نیستن کتاب میگیرم ولی از کتاب اصلا هیچی(تاکید میکنم،هیچی)یاد نگرفتم!!! پس نصفه کاره ولش کردمجدیدا هم رفتم سراغ جاوا اسکریپت.ولی این زبون اونقدر حوصله سر بره که واقعا هر ماه یه قسمت جدید میبینم.و چون خیلی تعداد ویدیو هاش زیاده،تصمیم گرفتم کتابشو دانلود کنم بلکه کمی بهتر جلو ببرم و تنها پیشرفتم دانلود کردن کتابش بوده:)در کل اینکه برای من تنبل(همونطوری که واضحه)پایتون بهترین گزینه بود.کی میدونه شاید بعدا دوباره یه زبون رو نصفه کاره یاد بگیرم :))))))در اخر هم اینکه این ادرس گیت هابمه،پروژه حاصی توش ندارم ولی حالا داشته باشیدش بد نیستhttps://github.com/mahdigoodarzi123مرسی که تا اینجا خوندید.</description>
                <category>مهدی گودرزی</category>
                <author>مهدی گودرزی</author>
                <pubDate>Mon, 11 Oct 2021 17:38:24 +0330</pubDate>
            </item>
            </channel>
</rss>