<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های امیرحسین حسینی</title>
        <link>https://virgool.io/feed/@amirhosein_h</link>
        <description>در مسیر یادگیری، تا ابد و یک روز</description>
        <language>fa</language>
        <pubDate>2026-06-07 16:31:26</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/65714/avatar/8BN3aa.png?height=120&amp;width=120</url>
            <title>امیرحسین حسینی</title>
            <link>https://virgool.io/@amirhosein_h</link>
        </image>

                    <item>
                <title>مدیریت زمان برای برنامه نویسان (صاعقه رشد)</title>
                <link>https://virgool.io/@amirhosein_h/%D9%85%D8%AF%DB%8C%D8%B1%DB%8C%D8%AA-%D8%B2%D9%85%D8%A7%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%D8%A7%D9%86-%D8%B5%D8%A7%D8%B9%D9%82%D9%87-%D8%B1%D8%B4%D8%AF-zei4f4zxvcf4</link>
                <description>آیا شما هم برایتان پیش آمده که برای انجام کار و پروژه ای برنامه ریزی کنید، ولی بعد از مدتی به آن عمل نکنید؟ احتمالا وقتی از مدیریت زمان و برنامه ریزی صحبت می شود، یاد اهداف و آرزوهایی که گوشه ذهنتان خاک خورده است می افتید. آرزوهایی که شاید هیچ وقت به علت نداشتن مدیریت زمان و برنامه ریزی عملی نشده اند. برای عملی کردن این مسئله به خصوص برای برنامه نویسان که با این مشکل دست‌و‌پنجه نرم می‌کنند، تکنیک و راهکارهای بسیار جذاب و کاربردی ارائه شده است که قصد داریم آن ها را در این مقاله به شما آموزش دهیم. زیرا امروزه مدیریت زمان برای برنامه نویسان یکی از اصلی ترین چالش های شغلی به شمار می‌رود. پس اگر می خواهید آموزش ببینید که چگونه زمان خود را مانند برنامه نویسان موفق مدیریت کنید، به هیچ وجه این مقاله را از دست ندهید.اهمیت مدیریت زمان برای برنامه نویسانداشتن مدیریت زمان یکی از عوامل هایی است که یک برنامه نویس موفق، توانمند و حرفه ای را از یک برنامه نویس معمولی متمایز می کند. پس حتما به این نکته توجه کنید که توانایی شما به عنوان برنامه نویس در مدیریت کردن زمان، نقش بسیار مهمی در رسیدن به موفقیت را برای شما بازی می کند. مدیریت زمان و برنامه ریزی اگر به صورت کاربردی و صحیح باشد، مزایای بسیار زیادی را به دنبال خواهد داشت. برخی از مهم ترین مزایای آن عبارت اند از :شناخته شدن شما به عنوان فردی خوش قول در برابر کارفرمایاننداشتن استرس و اضطراب به دلیل برنامه ریزی و داشتن آمادگی اولیهرسیدن به اهداف در زمان کمتر و بهره وری بیشتراما اینگونه از افراد چگونه زمان خود را مدیریت می کنند که بتوانند بدون هیچگونه نگرانی به تمام کارهای خود برسند؟ اگر می خواهید به راز موفقیت این افراد پی ببرید، ابتدا باید تعریف مناسبی از مدیریت زمان داشته باشید. پس مدیریت زمان را برای شما این گونه بیان می کنیم : &quot; مدیریت زمان یعنی نظم دادن به فعالیت هایی که باید در زمان مشخصی انجام شوند&quot;. پس از تعریف مدیریت زمان و دانستن اهمیت آن، شما آماده هستید که برنامه ای کاربردی برای زمان خود داشته باشید. اما بدانید که در این مسیر خطر هایی شما را تهدید می کنند! خطر هایی که معروف به غارتگران زمان هستند. اگر میخواهید سرمایه بزرگ زمان از شما دزدیده نشود، پس در ادامه مسیر با ما همراه شوید.غارتگران زمان برنامه نویسانیکی از اصلی ترین اهداف پیشرفت تکنولوژی، افزایش بازدهی و صرفه جویی در زمان است. اما گاهی اوقات تکنولوژی نه تنها باعث صرفه جویی در زمان نمی شود، بلکه باعث می شود زمان ما هدر برود. بنابراین در دنیای امروزی باید بسیار مواظب عواملی باشیم که باعث حواس پرتیمان می شوند. ما این عوامل را غارتگران زمان می نامیم که متاسفانه تعداد آن ها یکی یا دو تا نیست! همچنین از شخصی تا شخص دیگر، ممکن است این موارد تغییر کنند! برخی از مهمترین دزدهای زمان عبارتند از : تلویزیونشبکه های اجتماعیبازی های کامپیوتریافراد منفی، پرحرف و بی برنامهبی نظمی و شلختگیپیگیری اخبارانجام کارهایی که در آن ها تخصص ندارید.همان طور که دیدید بسیاری از وسایل و مواردی که در زندگی پیرامون ما وجود دارند روزانه در حال اتلاف زمان ما هستند. این در حالی است که شاید بیشتر آن ها هیچ سودی برای ما نداشته باشند! مثلا حضور در شبکه های اجتماعی، شرکت در بحث ها و گفتگوهای غیر مرتبط و... . پس اولین کاری که باید برای مدیریت زمان انجام دهید، شناخت غارتگران زمان خودتان است. پس از این کار شما آماده هستید تا قوانین و تکنیک هایی را یاد بگیرید که باعث می شوند یک برنامه زمانی مناسب و عالی برای خودتان تهیه کنید.قانونی به اسم پارکینسون برای برنامه نویسانامروزه یکی از اصلی ترین عوامل اتلاف زمان و تاثیر نداشتن کارها، نداشتن تمرکز و حواس پرتی است. زیرا اکثر مردم تصور می کنند که اگر کارهای خود را به صورت موازی و همزمان انجام دهند، در زمان خود صرفه جویی کرده اند. اما در حقیقت این تصور کاملا اشتباه است و به شدت به میزان کارایی شما ضربه می‌ زند. انجام غیرصحیح این کار باعث از بین رفتن تمرکز و در نتیجه افزایش زمان انجام یک کار می شود. مثلا تصور کنید که همزمان با کدنویسی و یا مشاهده ویدئوهای آموزش برنامه نویسی، در حال صحبت با یکی از دوستانتان هستید. قطعا انجام چنین کاری باعث از بین رفتن تمرکز شما می شود، به همین دلیل نه می توانید گفتگوی خوبی با دوستتان داشته باشید و نه کدهایی صحیح!پس از جلوگیری و حذف کردن این حواس پرتی ها، بدون شک یکی از بهترین راه های مدیریت زمان برای برنامه نویسان، بکارگیری قانون پارکینسون است. رعایت کردن این قانون در برنامه ریزی باعث می شود شما زودتر از آنچه که فکرش را می کنید، کارتان را به اتمام برسانید. پس بیایید تا قانون پارکینسون را بشناسیم و آن را در زندگی برنامه نویسان موفق بررسی کنیم.قانون پارکینسون می‌گوید : یک کار به اندازه ای طول می‌کشد که برایش زمان می‌گذارید. به بیان دیگر یعنی زمان را هر چه قدر کش بدهید کش می آید. همچنین قانون پارکینسون بر این باور استوار است که هرچه اندازه و حجم کاری افزایش یابد، کارآمدی و بازده آن پائین می‌آید.همانطور که متوجه شده اید خیلی از کار ها با قانون پارکینسون زودتر به اتمام می‌رسند و این تکنیکی است که برنامه نویسان حرفه ای به نفع خود استفاده می کنند. یعنی خود را ملزم می کنند که در زمان کمتری کار هایشان را انجام دهند تا بهره وری کارشان بیشتر شود. اما این قانون علاوه بر مزایایی که دارد، مسئله حائز اهمیتی نیز دارد که باعث می شود بعضی از برنامه نویسان کمتر از این قانون استفاده کنند. آن هم این است که اگر چندین کار را به طور مداوم و بدون استراحت در بازه زمانی کوتاه انجام دهید، باعث می شود عملکرد مغزتان کمتر شود و نتیجه دلخواه را دریافت نکنید. به همین منظور می خواهیم به شما اصل دیگری را نیز معرفی کنیم که باعث می شود در مدیریت زمان بهتر عمل کنید.نقش پومودورو برای برنامه نویساناحتمالا شما هم نام قانون پومودورو را در مدیریت زمان شنیده اید، تکنیکی به نام پومودورو وجود دارد تا بتوانید حواس‌‌پرتی‌ خود را به تمرکز تبدیل کنید و در زمانی کوتاه، بیشترین عملکرد ذهنی را تجربه کنید. در توضیحی ساده تکنیک پومودورو بیان می کند که :&quot;برای انجام هرکاری آن را به وظایف کوچک‌ تری تقسیم کنید و در هر 25 دقیقه، 5 دقیقه استراحت کرده و سپس دوباره کارتان را شروع کنید.&quot;حتما تکنیک پومودورو را برای کارهای روزانه خود انجام دهید، چون این تمرین به مغز شما کمک می‌کند که در مدت کوتاهی بر وظیفه‌ مشخصی تمرکز کنید. همچنین انرژی شما زود تمام نمی شود و بهره وری تان را افزایش می دهد. در ادامه مطلب یکی از اصل های مهمی که در مدیریت زمان باقی می ماند را معرفی خواهیم کرد و سپس به سراغ پیاده سازی برنامه ریزی می رویم.قانون ۲۰/۸۰ برای برنامه نویسانهمانطور که گفته شد قانون مهم دیگری در برنامه ریزی وجود دارد که آن، اصل پارتو یا همان قانون ۲۰-۸۰ است. این اصل بیان می کند که ۲۰% از فعالیت شما، ۸۰% نتایج را شامل می شوند و ۸۰% از کار های شما سبب ۲۰% از نتایج هستند. برای مثال برنامـه نویسی که ۲۰% از وقت خود را با علاقه و اشتیاق صرف کد زنی میکند، بهتر از کسی نتیجه می گیرد که ۸۰% وقت خود را بدون علاقه و اشتیاق کدنویسی می‌کند!پس بهتر است شما به عنوان برنامه نویس ۲۰% از کارهای موثر را شناسایی کنید و فقط به آن ها بپردازید تا ۸۰% نتیجه بگیرید. بنابر این اصل پارتو یکی از مفهوم های بسیار کاربردی در زندگی و مدیریت زمان است که تا وقتی آن را با علاقه در زندگی روزانه خود استفاده نکنید، تاثیر شگفت انگیز آن را نخواهید دید. پس از بیان این تکنیک ها زمان آن رسیده است که قانون پارکینسون، پومودورو و اصل پارتو را در برنامه ریزی به کار بگیرید تا بتوانید زمان خود را مدیریت کنید.مراحل برنامه ریزی با استفاده از تکنیک هااحتمالا تا اکنون متوجه شده اید که شناخت این تکنیک ها، برای برنامه ریزی و مدیریت کردن زمان کافی نیست. شما باید علاوه بر دانستن تکنیک ها، مراحل برنامه ریزی را نیز بدانید. این مراحل برای برنامه ریزی عبارت اند از :اهداف بلند مدت و کوتاه مدت خود را تعیین کنید. برای مثال یکی از اهداف بلندمدت شما می‌تواند یادگیری برنامه نویسی پایتون برای هوش مصنوعی باشد. در حالیکه شاید هدف کوتاه مدت شما خواندن مقاله ای در مورد مدیریت زمان باشد.اهداف خود را الویت بندی کنید.زمانی که می‌خواهید به کارتان اختصاص دهید را مشخص کنید.عواملی که باعث اتلاف زمان تان می‌شوند را شناسایی کنید.وظایف خود را تعیین کرده و آن را در لیستی بنویسید.وظایف لیست شده خود را به بخش های کوچکتر تقسیم کنید.در زمان های مشخص شده، وظایف خود را انجام دهید. شما می‌توانید با استفاده از تکنیک پومودورو، بهره وری تان را بیشتر کنید.پس از انجام این مراحل، برای پیاده سازی برنامه هایتان، نرم افزار هایی بسیار کاربردی و کاربرپسند ایجاد شده اند که میلیون ها نفر از جمله برنامه نویسان از آن ها استفاده می کنند. اگر شما هم می خواهید مانند افراد حرفه ای زمان خود را مدیریت کنید، باید از ابراز های مدیریت زمان استفاده کنید که کاربردی ترین آن ها عبارتند از : اورنوت (Evernote) : یک نرم افزار بسیار کاربردی است که برای یادداشت برداری، نوشتن لیست کارها، بایگانی، افزودن فایل های تصویری و... مورد استفاده قرار می‌گیرد. هم‌چنین شما می‌توانید این ابزار را در گوشی های همراه، تبلت و سیستم های کامپیوتری نیز استفاده کنید.واندر لیست (WunderList) : واندر‌لیست یک ابزار رایگان برای مدیریت وظایف است که با استفاده از آن می‌توانید لیست هایی از وظایف خود را ایجاد کنید. این لیست ها امکانات زیادی را در اختیارتان می‌گذارند. برای مثال شما می‌توانید جزئیات زیادی از جمله تاریخ انجام کار، یادداشت ها، ایده ها، نظرها، یادآوری ها و... را به لیست برنامه تان اضافه کنید. با این کار شما دید باز تری برای انجام کارهایتان خواهید داشت.ترلو (Trello) : احتمالا شما هم می‌دانید که مدیریت وظایف و افرادی که در تیم ها فعالیت می‌کنند، کار بسیار سختی است. مخصوصا زمانی که وظایف و تعداد اعضای تیم ها بیشتر شوند. به همین دلیل می‌خواهیم ابزار قدرتمندی به شما معرفی کنیم که کمی متفاوت تر از موارد قبلی است. شما با استفاده از این ابزار علاوه بر مدیریت کردن وظایف تان، می‌توانید تیم تان را نیز مدیریت کنید. این ابزار برای کنترل افراد تیم، وظایف، برنامه‌های درحال اجرا، برنامه های آینده، یادداشت ها، تقسیم وظایف و... مورداستفاده قرار می‌گیرد. این نرم افزار تحت وب و محبوب Trello نام دارد.پیشنهاد می‌شود برای مدیریت تیم، سازمان، شرکت و یا حتی خودتان، مقاله اسکرام چیست را مطالعه کنید.نتیجه گیرییک برنامه ریزی خوب باعث می‌شود که شما از زمان بیشتری در زندگی استفاده کنید. فرصت های یادگیری خود را افزایش دهید، استرس کمتری داشته باشید و تمرکز بیشتری بدست آورید. یادتان باشد که ابزار ها و تکنیک های مدیریت زمان، صرفا به شما کمک می‌کنند تا بهره وری شما در برنامه ریزی بیشتر شود و این خود شما هستید که باید برای خودتان برنامه ریزی کنید.به نظر شما چه عوامل دیگری می توانند در مدیریت زمان تاثیرگذار باشند؟ خوشحال می شویم که تجارب خود را در بخش نظرات با ما و سایر مخاطبین در میان بگذارید. ?</description>
                <category>امیرحسین حسینی</category>
                <author>امیرحسین حسینی</author>
                <pubDate>Tue, 03 Sep 2019 13:51:05 +0430</pubDate>
            </item>
                    <item>
                <title>اسکرام چیست؟ سلاح چابک تیم ها !</title>
                <link>https://virgool.io/@amirhosein_h/what-is-scrum-nzup3ufshllk</link>
                <description>یکی از دغدغه هایی که هر شرکت، سازمان، تیم و یا حتی یک شخص میتواند با آن مواجه شود، مدیریت پروژه و سرعت بخشیدن به روند انجام پروژه است. روندی که بعضی وقت ها در زمان معین به اتمام نمی‌رسد و باعث عقب ماندن فعالیت های مجموعه می‌شود. برای حل این مسئله، موضوعی به اسم اسکرام مطرح می‌شود که در این مقاله به اینکه اسکرام چیست ؟ مفاهیم و روند اسکرام چیست ؟ همچنین افراد در اسکرام و... خواهیم پرداخت.مفاهیم اسکرامبدون تردید برای یادگیری هر مبحث جدید، باید آن ها را  پیوسته و پشت سر هم فرا بگیرید که آن ها همان مفاهیم، اصطلاحات، فرمول ها و راهکار ها هستند. قبل از پرداختن به مبحث اسکرام هم باید با مفاهیم و اصطلاحاتی که در آن نهفته، آشنا شوید تا درک بهتری از تعریف اسکرام به دست آورید. در ادامه مطلب برای شما اصطلاحات پرکاربرد اسکرام را به صورت مختصر توضیح داده و لیست کرده ایم، این لیست عبارت اند از :اجایل (Agile : (Agile یا چابک مجموعه ای از روش های پرکاربرد توسعه نرم افزار است که از ابتدای پروژه به صورت پیوسته انجام می‌شود. برای مثال شما محصول نرم افزاری خود را تا اتمام پروژه، چندین بار به مشتری ارائه می‌دهید. سپس با گرفتن بازخورد و پیشنهادات از مشتری، نسبت به عملکردتان مطلع خواهید شد. این امر موجب افزایش کیفیت محصول و رضایت مندی مشتریان می‌شود که یکی از معروف ترین این روش ها، اسکرام (Scrum) است.پروداکت بلاگ (Product Backlog) : بک لاگ یک لیست از کارهای روند توسعه محصول است که بر اساس الویت در لیست قرار می‌گیرد. برای مثال اضافه کردن ویژگی های جدید، تغییر ویژگی های نرم افزاری موجود، رفع باگ ها و...  از کارهایی است که یک تیم بر اساس الویت بندی آن را انجام می‌دهد.اسپرینت پلنینگ (Sprint Planning) : در واقع اسپرینت‌ها بازه های زمانی کوتاهی هستند که معمولا از 2 هفته شروع و حداکثر در 4 هفته (حدودا یک ماه) به پایان میرسند. در این بازه زمانی اسپرینت(Sprint)، افراد تیم موظف به انجام کارهای خود در بازه های زمانی کوتاه هستند. زیرا اگر مدت زمان یک اسپرینت طولانی شود، روند اجرای پروژه ها پیچیده و بی نظم خواهند شد. همچنین اسپرینت‌ها با بررسی مسیر هدف موجب افزایش عملکرد افراد نیز می‌شوند.اسکرام چیست ؟اسکرام به عنوان یک چارچوب یا فریمورک (Framework) بسیار کاربردی در زمینه مدیریت پروژه شناخته می‌شود که مراحل انجام پروژه را سرعت می‌بخشد. به این صورت که پروژه ای بزرگ با برنامه ریزی های 2 تا 4 هفته ای در اسپرینت (Sprint) به پروژه های کوچک‌تر تبدیل می‌شوند. در واقع هر چه وظایف پروژه کوچک تر شود، روند اجرا و کیفیت آن بهبود می باید. به گفته ابداع کننده Scrum یعنی کن شوئبر (Ken Schwaber)، اسکرام یک متدلوژی نیست، بلکه به عنوان یک فریم ورک بازده کار گروهی افراد را افزایش می‌دهد.افراد در اسکرام مدیر محصول (Product manager) : مدیر محصول یک شرکت یا سازمان وظیفه برنامه ریزی، پیش بینی، تولید یا بازاریابی محصول را بر عهده دارد.مربی اسکرام (Scrum master) : در واقع اسکرام مستر (Scrum Master) به عنوان یک مربی، مدیریت کار ها و کارکنان را در اسپرینت های مشخص شده بر عهده دارد.برنامه نویسان (Developers) : برنامه نویسان به عنوان عضوی از تیم می‌توانند یک نماینده برای پیشبرد توسعه نرم افزار داشته باشند تا فعالیت های خود را به اسکرام مستر گزارش دهند.پیشنهاد می‌کنیم مقاله مدیریت زمان برای برنامه نویسان را مطالعه کنید.و ..... نکته : مسئولیت های افراد در اسکرام می‌تواند متفاوت باشد، برای مثال تیم مارکتینگ، سئو، کارشناسان فروش و تولید کنندگان محتوا و ... عضوی از افراد تیم محسوب می‌شوند. توجه داشته باشید که این سبک اسکرام یا چابک در هر سازمانی مورد استفاده قرار میگیرد و فقط محدود به شرکت های حوزه کامپیوتر نمی‌شود.روند اسپرینت در تعریف اسپرینت گفتیم که : بازه های زمانی کوتاهی هستند که معمولا از 2 هفته شروع و حداکثر در 4 هفته (حدودا یک ماه) به پایان میرسند، اما پروسه یا روند اجرا و پیاده سازی آن چگونه است؟ اسپرینت ها به چه بخش هایی تقسیم می‌شوند؟جلسات روزانه (Daily) : در واقع جلسه ای روزانه بین افراد تیم برگزار می‌شود که مدت زمان آن 15 دقیقه است. در این 15 دقیقه مربی اسکرام فعالیت ها را بررسی و هماهنگ می‌کند و سپس برای 24 ساعت آینده برنامه ریزی می‌کند. این جلسات معمولا ایستاده برگزار می‌شود و همکاری و عملکرد تیم را بهینه می کند. بازبینی (Review) : در انتهای هر بازه زمانی در Sprint ها، یک بررسی اجمالی انجام می‌گیرد تا تیم Scrum در مورد کارهای انجام شده خود در بازه زمانی اسپرینت صحبت کند. همچنین براساس کار های انجام شده در توسعه محصول به دست اعضای تیم،  کارکنان سازمان می‌توانند مسئولیت های بیشتری برای ارزشمند تر شدن مجموعه قبول کنند.داستان کاربر (User story) : داستان کاربر یکی از مهم ترین بخش های هر اسپرینت است که به پیشبرد اهداف تیم و پروژه کمک می‌کند. اساس کار آن، ثبت و ضبط جزئیات کارکنان است. در واقع پس از گزارش گیری از وضعیت کارکنان، تخمین می‌زنند که هر عضو از مجموعه چه اندازه کار کرده و اهداف تیم را جلو برده است.(به عبارتی مو را از ماست می‌کشند !)به گذشته نگریستن یا همان (Retro) : در پایان هر اسپرینت یک جلسه به اسم Retro برگزار می‌شود و مربی اسکرام پس از بررسی وظایف کارکنان در طول اسپرینت، به این امر می‌پردازد که اگر وظیفه ای ناتمام مانده، دلیل آن چه بوده است. در نهایت پس از بررسی دلیل عقب ماندن،به اصطلاحی آن را معاینه می‌کند، یعنی به کمک آن فرد می‌پردازد. در کل مفهوم Retro، یک فرصت خیلی خوب برای برقراری ارتباط بین مربی اسکرام و کارکنان اعضای تیم ایجاد کرده تا به انجام روند پروژه، سرعت ببخشد.جمع بندی اهمیت اسکرام به قدری زیاد است که سازمان ها، شرکت ها و حتی تیم ها از آن برای چابک تر شدن و سریع تر شدن روند کارهایشان استفاده می‌کنند. زیرا با انجام این کار بسیاری از هزینه های مجموعه کاهش می‌یابد، کارکنان تنبلی نمی‌کنند و ... . اما توجه کنید که اسکرام به تنهایی نمی‌تواند تمام مشکلات مجموعه را حل کند. شاید در اوایل کار به جای پیشرفت، مجموعه پسرفت کند! اما بعد از گذشت یک زمان و براساس تکرار و استمرار، اسکرام تبدیل به یک فرهنگ همه گیر در شرکت ها خواهد شد. به این ترتیب اعضای تیم از رضایت و خوشحالی بیشتر برخوردار خواهند شد، در نتیجه راندمان مجموعه افزایش پیدا می‌کند.</description>
                <category>امیرحسین حسینی</category>
                <author>امیرحسین حسینی</author>
                <pubDate>Sun, 01 Sep 2019 16:04:13 +0430</pubDate>
            </item>
                    <item>
                <title>نبرد فریمورک های Bootstrap و Foundation</title>
                <link>https://virgool.io/@amirhosein_h/%D9%86%D8%A8%D8%B1%D8%AF-%D9%81%D8%B1%DB%8C%D9%85%D9%88%D8%B1%DA%A9-%D9%87%D8%A7%DB%8C-bootstrap-%D9%88-foundation-ztz2otfqo6qm</link>
                <description>قبل ازینکه به نبرد فریمورک های بوت استرپ و فاندیشن بپردازم، اجازه دهید یک توضیح مختصر درباره اینکه css چیست؟ بدهم. بدون تردید هر کسی که تازه به دنیای وب قدم می‌گذارد، آوازه و شهرت css را بسیار خواهد شنید. شهرتی که احتمالا این سوالات را برای شما هم به وجود خواهد آورد که css چیست و چه کاربردی دارد ؟ شناخت این زبان یکی از پایه ای ترین مفاهیم در طراحی وب است که باعث می‌شود سایت شما ظاهر جذابی برای کاربران داشته باشد. سی اس اس چیست ؟ همانطور که برایتان گفتم، css یکی از پایه ای ترین مفاهیم وب به شمار می‌رود که وظیفه آن زیبا ساختن ظاهر کدهای HTML است. کدهای html همان زبان نشانه گذاری معروف هستند که ساختار دنیای طراحی وب را تشکیل می‌دهند. اگر این کد‌ها به تنهایی در سایت ها استفاده شوند، قطعا هیچ جذابیت یا زیبایی برای کاربران ندارند. ظاهر عناصر موجود در html مانند رنگ ها، پس زمینه صفحات، اندازه تصاویر، انیمیشن ها و ... توسط کدهای css ایجاد می‌گردند. تصویر زیر مثالی کاربردی از این زبان ها است که دید شما را نسبت به css بهتر خواهد کرد.با مشاهده تصویر بالا، احتمالا متوجه شده اید که ساختار صفحات وب یعنی کد های html، در واقع همان بدنه ماشین هستند. اما زمانی که از امکانات زبان css استفاده کنید، شاهد زیبا تر شدن ظاهر ماشین یا همان صفحات خود خواهید بود.فریمورک چیست ؟ فریمورک ها یک سری قوانین و استاندارد هایی از پیش تعریف شده هستند که در محیطی نرم افزاری، مورد استفاده برنامه نویسان قرار می‌گیرند. این فریمورک ها در زمینه های توسعه برنامه‌های موبایل، دسکتاپ، وب و ... وجود دارند. استفاده از این فریم ورک ها باعث می‌شود که با نوشتن کدهای کمتر، سریع تر به نتایج دلخواه خود در برنامه نویسی برسید. فریمورک های css همانطور که اشاره کردم css هم مانند سایر زبان های برنامه نویسی دارای فریم ورک هایی است که سرعت کد زنی شما را افزایش می‌دهد. در ادامه مطلب دو تن از جنگجویان و رقیبان بسیار قوی css را برایتان معرفی خواهم کرد، پس به هیچ عنوان تماشای این میدان جنگ را از دست ندهید.مقایسه بوت استرپ با فاندیشنبوت استرپ یکی از محبوب ترین چارچوب های css است که برای توسعه سریع تر سایت ها مورد استفاده قرار می‌گیرد. از قابلیت های این فریمورک می‌توان به ایجاد فرم، منو، اسلایدر و... اشاره کرد که در عین سادگی و سازگاری با مرورگرهای مختلف، کدها را نیز بهینه می‌کند. در حالت کلی برخی از مزایای بوت استرپ عبارتند از :پشتیبانی از پیش پردازنده Sass. این پیش پردازنده کدهای css را کوتاه تر می‌کند و بعد از کامپایل شدن(ترجمه شدن) آن کد هارا دوباره به css تبدیل میکند.سازگار بودن با مرورگر های مختلفتوسعه سریع تر کدهاریسپانسیو بودنمنبع باز (open source)و ...برخی از معایب استفاده از بوت استرپ نیز عبارت اند از :ظاهر تکراری سایت هابه علت پیچیدگی، مبتدیان باید زمان بیشتری برای یادگیری این زبان بگذارندمحدود کردن بعضی از امکانات جاوا اسکریپتباعث از بین رفتن خلاقیت می‌شودفریمورک فاندیشنفریمورک فاندیشن نیز مانند بوت استرپ دارای ساختاری هدفمند است که با استفاده از کتابخانه ها به Responsive کردن سایت ها، ساده سازی پروژه های بزرگ و ... می‌پردازد. اما به علت پیچیده بودن آن، برای افرادی که مبتدی هستند پیشنهاد نمی‌شود. برخی مزایای این فریم ورک عبارتند از :کم حجم بودنریسپانسیو بودنامکان شخصی سازیانعطاف داشتن در طراحییادگیری ساده تر نسبت به بوت استرپسازگار بودن با مرورگر های مختلفمنبع باز (open source)معایب استفاده از foundation نیز عبارت اند از :ظاهر تکراری سایت هاباعث از بین رفتن خلاقیت می‌شود.با توجه به محبوبیت بوت استرپ، این فریم ورک از پشتیبانی ضعیف تری نسبت به بوت استرپ برخوردار است..در قسمت زیر میتوانید آمار محبوبیت این 2 فریمورک را در سال های اخیر مشاهده کنید. https://trends.google.com/trends/explore?date=today%205-y&amp;geo=US&amp;q=Bootstrap%20framework,foundation%20framework کلام آخر بوت استرپ و فاندیشن دو رقیب اصلی در میدان نبرد فریمورک ها هستند. برای تصمیم گیری در مورد انتخاب یک فریم ورک مناسب، باید در نظر داشته باشید که کدام یک از این ها نیازتان را برآورده خواهد کرد. بدون شک foundation راه پیچیده تری برای طراحی جلوی پایتان می‌گذارد، اما این قابلیت را فراهم می‌کند که طراحی منحصر به فرد و سفارشی خود را ایجاد کنید. در مورد Bootstrap هم با داشتن دانش بسیار کمی از CSS و جاوا اسکریپت می‌توانید طراحی وبسایت خودتان را به زیبایی انجام دهید. در نهایت با انتخاب هرکدام ازین فریمورک ها مبتنی بر نیاز های خود، می‌توانید فرآیند توسعه سایت را بسیار ساده کرده و پایه های لازم برای ایجاد یک وب سایت شگفت انگیز را فراهم کنید. انتخاب با شماست!</description>
                <category>امیرحسین حسینی</category>
                <author>امیرحسین حسینی</author>
                <pubDate>Wed, 28 Aug 2019 15:24:10 +0430</pubDate>
            </item>
                    <item>
                <title>php چیست</title>
                <link>https://virgool.io/coderlife/php-%DA%86%DB%8C%D8%B3%D8%AA-pb2so0j2meag</link>
                <description>چیست php ؟ این یکی از سوال های رایجی است که خیلی از کاربران در زمان شروع یادگیری برنامه نویسی برای وب میپرسند. ما هم در این مقاله می‌خواهیم به این بپردازیم که php و تاریخچه آن چیست؟ اهمیت و کاربرد آن و همچنین اینکه چند درصد وب سایت ها با این زبان برنامه نویسی شده اند، بپردازیم.چیست phpپی اچ پی که به معنی پیش پردازنده ابرمتن ترجمه شده، مخفف شده عبارت Personal Hypertext Preprocessor است. یک زبان سطح بالا، پیشرفته و منعطف محسوب می‌شود که برای برنامه نویسی سمت سرور نوشته شده است. زبان های سطح بالا، همان زبان هایی هستند که انسان ها می‌توانند آن را به راحتی درک کنند. در کل این زبان برای ایجاد صفحات داینامیک یا همان پویای وب ایجاد شده است.تاریخچه phpپی اچ پی در سال 1994توسط Rasmus Lerdorf ابداع شد. در زمان ابداع شدن این زبان، اسکریپت های php مخفف Personal Home Page بودند چون این اسکریپت ها برای مدیریت کار ها و وظایف شخصی نوشته شده بود. نکته جالب توجه این‌جاست که بعد از چند سال نسخه جدید این زبان ارائه شد و اسم آن به Personal Hypertext Preprocessor تغییر کرد. این اسم به این مفهوم است که داخل این ابر متن، عکس ها، ویدئو، جداول، متن های بسیار طولانی و... می‌توانند قرار بگیرند.اهمیت و کاربرد phpاین زبان به دلیل open source بودن از اهمیت بسیار بالایی برخوردار است و همچنین جامعه آماری بالایی دارد به طوری که امروزه بالغ بر 80 درصد سایت ها در دنیا با این زبان پیاده سازی شده اند. بدون شک این نشان دهنده محبوبیت فوق العاده زبان php و قدرتمند بودن آن است که می‌تواند بهترین انتخاب برای کسانی باشد که می‌خواهند به تازگی به دنیای برنامه نویسی وب قدم بگذارند. همچنین اگر می‌خواهید آموزش برنامه نویسی php را یاد بگیرید باید بگوییم که یادگیری این زبان خیلی ساده است و همچنین این زبان کاربرد های بسیار زیادی دارد که در ادامه آن ها را لیست کرده و به آن میپردازیم. کاربرد های زبان php عبارت اند از :1-  توانایی پویا کردن صفحات وب و تولید وب اپلیکیشن (Web Applicatuin)2- داشتن منبع باز (Open Source)، اپن سورس بودن به معنی این است که هر برنامه نویس حرفه ای می‌تواند زبان php را توسعه دهد.3- امکان تولید فایل های پی دی اف، تکست، و همچنین پردازش عکس های jpg و ...4- برنامه نویسی سایت های فروشگاهی، آموزشی، شرکتی و ...لیست بالا چند نمونه از کاربرد های بسیار زیاد زبان php است که برای شما بیان کردیم.چه وب سایت هایی از php استفاده می‌کنندهمانطور که گفته شد تقریبا 80 درصد سایت ها در دنیا زبان پی اچ پی را به عنوان زبان اصلی خود انتخاب کردند، حالا می‌خواهیم برای شما معروف ترین سایت هایی که با این زبان پیاده سازی شده اند را بیان کنیم که بدون شک برای یکبار هم که شده به گوشتان خورده است! این سایت ها عبارت اند از :سایت فیسبوکسایت phpسایت ویکی پدیااز سایت های ایرانی معروف که از این زبان استفاده می‌کنند میتوان به : دیجی کالا اسنپ فود نتیجه گیری در حال حاضر محبوب ترین زبان برنامه نویسی سمت سرور شناخته می‌شود و در مقایسه با رقیبان خود مثل ASP و Node js از قدرت بسیار بالایی برخوردار است. اگر می‌خواهید این زبان را به طور کامل یاد بگیرید پیشنهاد میکنیم آموزش فرادرس یا آموزش php سون لرن را برای متخصص شدن مشاهده کنید.</description>
                <category>امیرحسین حسینی</category>
                <author>امیرحسین حسینی</author>
                <pubDate>Wed, 28 Aug 2019 13:56:28 +0430</pubDate>
            </item>
                    <item>
                <title>داده کاوی چیست ؟</title>
                <link>https://virgool.io/@amirhosein_h/%D8%AF%D8%A7%D8%AF%D9%87-%DA%A9%D8%A7%D9%88%DB%8C-%DA%86%DB%8C%D8%B3%D8%AA-h7aipbuhzn2q</link>
                <description>حدودا در چند سال پیش یکسری تحقیقات در مورد بازاریابی توی مغازه و فروشگاه های اروپایی انجام شد که بیانگر این بود : مردم خرید هایی را انجام می‌دهند که با هم مرتبط باشند. برای مثال کیک با آبمیوه، نون با پنیر، نمک با فلفل، ادویه جات و ... به همین دلیل صاحبان فروشگاه ها به این فکر افتادند که محصولات مرتبط را کنار هم قرار دهند به طوری که بینشان یک محصول کم مصرف گذاشته می‌شد تا آن 2 کالا که به هم ربط داشتند بیشتر به چشم بیایند.همانطور که می‌شود نتیجه گرفت این تکنیک با استفاده از تجربه خرید مشتریان بوده که صاحبان کسب و کار، آن را کشف کرده بودند. پس می‌توان نتیجه گرفت نوع خریدی که مردم انجام دادند و دانشی که باعث شد این اطلاعات به ظاهر بی معنی قابل استفاده شوند، علم داده کاوی یا همان Data Mining است. علم داده کاوی چیست ؟با توجه به مقدمه ای که گفته شد، علم داده کاوی یک روش حل مسئله است که اطلاعات را با استفاده از نرم افزار ها بررسی می‌کند تا یکسری روش و الگوهای تکرارشونده را از آن ها دریافت کند. پس از دریافت کردن این الگوها، شروع به ارتباط برقرار کردن بین حوادث و اتفاقات می‌کند. به طور خلاصه علم داده کاوی با بررسی و تحلیل اطلاعات به طور دقیق، از چیزهایی که به نظر بی استفاده می‌آیند اطلاعات بسیار کاربردی می‌سازد که باعث افزایش فروش، بازدید و ... می‌شود.3 اصطلاح رایج در داده کاوی همانطور که می‌دانید برای یادگیری مبحث های جدید، شما در قدم اول نیاز دارید تا کلمات و اصطلاحات آن حوزه ای را بشناسید تا درک بهتری از آن علم داشته باشید. به همین دلیل یکسری از اصطلاحلات رایج در داده کاوی را در لیست زیر، برایتان بیان می کنم.1- تصمیم سازی (decision making ) : با استفاده از روش تصمیم سازی، سازمان ها اطلاعات و داده ها را تحلیل کرده و در دست مدیران آن سازمان قرار می‌دهند تا بهترین تصمیم برای بهینه ساختن فرایند های کاری ارائه شود.2- هوشمند ساختن کسب و کار (Bussiness Intelligence) : این روش شامل یکسری از ابزارها، فرایند ها و راهکار ها است که اطلاعات را از کل سازمان می‌گیرد و با استفاده از داده ها، نتیجه گیری های اطلاعاتی ارزشمند را که در الگو های مختلف پیاده سازی  شده اند را در اختیار صاحبان شرکت یا سازمان قرار می‌دهد.3- شاخص های عملکرد کلیدی (KPI=Key Performance Indicator) : KPI ها یکسری از معیار های سنجش هستند که بر اساس پلن ها و اهداف های تیم، وضعیت حال را نسبت به گذشته اندازه گیری می‌کنند.کاربرد داده کاوی چیست ؟ 1- شرکت ها و سازمان ها یا حتی تیم های استارتاپی نوپا برای تحلیل رقبا و بررسی آن ها، از روش داده کاوی استفاده می‌کنند تا در کارشان موفق بمانند و به روز باشند.2- یکی دیگر از کاربرد های علم داده کاوی در بورس است که به تصمیمات کارگذاران بوس کمک بسیار شایانی می‌کند.3- یکی دیگر از کاربرد های علم داده کاوی برای جلوگیری از حملات الکترونیکی بانکی است.4- این علم حتی در سیستم های آموزشی نیز تاثیر گذار بوده، به طوری که کیفیت آموزشی به شور چشمگیری ارتقا یافته است.نتیجه گیریبه طور خلاصه در داده کاوی، اطلاعات و منابع از عملکرد موجودات و پدیده ها دریافت شده و الگوهای آن شناسایی می‌شوند و در نهایت در فعالیت های مارکتینگ، سیستم های آموزشی، بورس و ... استفاده می‌شود.اگر نیاز به کسب اطلاعات بیشتر در موضوعاتی مثل ارتباط کسب‌و‌کارهای آنلاین با دیتا ماینینگ،تکنیک ها و روش های داده کاوی، پیش نیازهای لازم برای یادگیری داده کاوی و ... دارید به لینک داده کاوی چیست ؟ مراجعه کنید.</description>
                <category>امیرحسین حسینی</category>
                <author>امیرحسین حسینی</author>
                <pubDate>Tue, 27 Aug 2019 16:24:01 +0430</pubDate>
            </item>
                    <item>
                <title>وب سرویس چیست ؟</title>
                <link>https://virgool.io/@amirhosein_h/what-is-web-service-nv9z5a8ho2ch</link>
                <description>خیلی از شما در مورد اصطلاح وب سرویس چیز هایی شنیدید، ولی احتمالا نمیدونید دقیقا چی هست و اینکه کارش چیه؟ قابل توجه است که بسیاری از افراد روزانه از اپلیکیشن ها و نرم افزارهای معروفی مثل اسنپ، فرادرس ، دیوار و ... استفاده می‌کنند. آیا میدانستید که وب سرویس ها در تمامی اپلیکیشن های این شرکت ها پیاده سازی شده است؟ پس اگر میخواهید با مفاهیم وب سرویس ها و استاندارد های وب سرویس آشنا شوید به هیچ عنوان ادامه مطلب را از دست ندهید.تصویر برای وب سرویس وب سرویس چیست ؟قابل توجه است که همه نرم افزارها و اپلیکیشین های نصب شده در گوشی شما، فقط آن اپلیکیشین نیستند! در بعضی مواقع آن اپلیکیشین ها حتی 20 درصد نرم افزار را نیز تشکیل نمی‌دهد. چرا؟ چون اپلیکیشن ها به عنوان یک کلاینت (Client)، فقط کار تعامل کاربر با نرم افزار را انجام می‌دهند. در واقع اکثر پردازش های پروژه در خود اپلیکیشین که در گوشی شما نصب شده، نیست. حالا شاید این سوال هم برای شما پیش بیاید که محل پردازش های اپلیکیشن در کجاست؟ آن پردازش های اصلی و بزرگ نرم افزار ها، در سمت سرور وب انجام می‌شود. پس در تعریفی کلی در جواب اینکه وب سرویس چیست ؟، میگوییم که وب سرویس یک پل ارتباطی بین کلاینت و سرور است که کار انتقال اطلاعات بین بخش های مختلف نرم افزار را انجام می‌دهد.استاندارد وب سرویس هابه این وب سرویس ها از پروتکل های استاندارد و پرکاربرد وب پیروی می‌کنند که به صورت زیر است :1- تکنولوژی ای جکس (Ajax) که برای انتقال اطلاعات استفاده می‌شود.2- وب سرویس سواپ (SOAP) به مخفف Simple Object Access Protocol است که برای انتقال اطلاعات در سطح اینترنت مورد استفاده قرار می‌گیرد و همچنین دارای امنیت بسیار بالایی است. اما این امنیت بالا، پیچیدگی های خوص خود را نیز هم دارد.3- ایکس ام ال (XML) یک زبان نشانه گذاری است که برای انتقال اطلاعات در وب سرویس ها استفاده می‌شود که قابلیت گسترش دادن را دارد.4- دبیلیو اس دی ال (WSDL) در وب سرویس ها که مخفف Web Service Description Language است، برای استاندارد ساختن تبادل اطلاعات ایجاد شده است. این استاندارد، راه های ارتباط بین وب سرویس و کلاینت را با استفاده از فایل های ایکس ام ال مشخص می‌کند. پس از بررسی استاندارد های وب سرویس ها، زمان آن رسیده که به نوع معماری آن ها بپردازیم.معماری وب سرویس هامعماری های وب سرویس ها در سطح اینترنت، به طرز مختلفی در حال پیاده سازی شدن هستند. که برایتان 3 نمونه از معماری های وب سرویس را به مختصر توضیح خواهیم داد :یکی از معروف ترین معماری های وب سرویس رست ای پی آی (Rest API) نام دارد، این مدل معماری به منظور ایجاد اپلیکیشن های سمت شبکه ایجاد شده است که در حال حاضر از پروتکل های مختلفی استفاده می‌کند. یکی از پروتکل های پرکاربرد این معماری ها که در URL سایت ها مشاهده می‌شود، HTTP نام دارد. یکی از دلایل معروف بودن این معماری، نداشتن پیچیدگی بسیار زیاد نسبت به دیگر معماری ها است که می‌توان به عنوان نقطه قوت این معماری نیز از آن یاد کرد.یکی دیگر از معماری های موجود در سطح وب، اس او ای (SOA) نام دارد، در واقع این معماری یک نوع از سبک های طراحی است که خدمات موجود در اپلیکیشن به قسمت های مختلف تقسیم می‌شود تا سرعت وب سرویس افزایش یابد. همچنین این معماری از یک پروتکل برای انتقال داده ها استفاده می‌کند.پی آر سی (PRC) به عنوان یک پروتکل پر کاربرد، با استفاده از فراخوانی یک اپلیکیشن می‌تواند یک وب سرویس را از یک نرم افزار کامپیوتری با وسیله توابع از پیش تعریف شده، به گرفتن اطلاعات بپردازد. سپس آن اطلاعات را به نرم افزار دیگر منتقل کند. پس از بررسی استاندارد های موجود در وب سرویس ها، به مثالی از وب سرویس ها توجه کنید. برای مثال بعد از باز کردن اپلیکیشن دیجی‌کالا در گوشی همراه تان، اطلاعات محصولی که مورد نظرتان است برایتان نمایش داده می‌شود. اما این اطلاعات در واقع در گوشی شما نیست. بلکه این اطلاعات در سمت سرور دیجی‌کالا ذخیره شده است. پس برای نمایش آن اطلاعات از سمت سرور، باید یک ارتباط یا لینکی باشد که آن اطلاعات در گوشی شما بارگذاری شود. در نتیجه آن لینک یا رابط که می‌تواند پل ارتباطی بین کلاینت و سرور باشد، وب سرویس نام دارد.برای دریافت اطلاعات بیشتر پیشنهاد میکنم به هیچ وجه ویدئوی زیر که به توضیح کامل وب سرویس چیست ؟ می‌پردازد را از دست ندهید.لینک ویدئوی وب سرویس چیست ؟ </description>
                <category>امیرحسین حسینی</category>
                <author>امیرحسین حسینی</author>
                <pubDate>Wed, 21 Aug 2019 15:47:26 +0430</pubDate>
            </item>
            </channel>
</rss>