داکر در عمل :: سلام دنیا Hello World!

همه دوست دارن کار را با یک مثال شروع کنند که با توجه به سنت دیرینه‌ی ما مردان و زنان فناوری‌اطلاعات با یک “Hello World” شروع می‌کنیم. قبل از شروع باید داکر را طبق دستورالعمل‌هایی که در دو پست قبلی به آنها اشاره کردم نصب کنید، اگر آموزش‌ها برای شما کافی نبوده به لینک زیر بروید و نصب و راه اندازی خود را کامل کنید:

https://docs.docker.com/installation

کاربران OSX و Windows حتماً ابزار Docker ToolBox را نصب و راه اندازی کنند.

هنگامی که داکر را نصب کردید یک اتصال فعال اینترنت داشته باشید.

نکته: از آنجا که داکر برای کشور عزیزمان تحریم‌های ناجوانمردانه و بر خلاف قوانین نشر آزاد علم وضع کرده ، حتما از VPN استفاده کنید.

به خط فرمان بروید و خط زیر را تایپ کنید:

docker run dockerinaction/hello_world

نکته: داکر را با کاربر ریشه (root) در سیستم خودتان اجرا کنید، یعنی از فرمان sudo بهره‌گیری کنید. اگر این کار را انجام ندهید با خطاهای مجوز روبرو خواهید شد.

شما می توانید یک گروه کاری برای داکر ایجاد کنید و به این گروه مجوز سوکت بدهید و با اضافه کردن کاربر به این گروه این الزام را از بین ببرید. پس از انجام این کار، داکر می‌تواند به کار خود به راحتی ادامه دهد.

با انجام این کارها ابتدا image لازم دانلود شده ، کانتینر اجرا شده و پیام “Hello World” روی صفحه چاپ می‌شود.

نکته: اگر دستور بالا را دوباره اجرا کنید ، فقط پیام “Hello World” روی صفحه چاپ می‌شود.

تبریک شما اولین قدم در آموزش داکر را برداشتید.

نوشته داکر در عمل :: سلام دنیا Hello World! اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی

داکر در عمل :: نصب داکر روی دبیان/ابونتو/مینت

نصب داکر از مخازن لینوکسی

سلام ، در ادامه آموزش داکر درعمل نصب و راه‌اندازی داکر از طریق مخازن رو فرا می‏‏‌گیریم. من برای این آموزش نصب (Docker CE (Community Edition را انجام خواهم داد،این نسخه کاملاً متن باز و انعطاف‌پذیر می باشد و برای تیم های توسعه و کوچک بهترین گزینه محسوب می‌شود.برای شروع کار با داکر ، Docker CE بهترین گزینه است ، حتما وقت بگذارید و با دنبال کردن آموزش آن را فرا بگیرید.

در ابتدا توصیه می‌کنم قبل از هر کاری بررسی کنید در محیط لینوکس خود هیچگونه نسخه از داکر از قبل نصب نشده باشد. برای این کار فرمان زیر را وارد می‌کنیم:

sudo apt remove docker docker-engine docker.io containerd runc
بررسی و حذف نسخه‌های مختلف داکر در لینوکس

پیش از هر کاری apt را بروز کنید

sudo apt update

به طور پیش‌فرض ، apt از پروتکل HTTPS استفاده نمی‌کند. بسته‌های زیر را نصب کنید که به APT امکان استفاده از مخازن HTTPS را می‌دهد.

sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
بسته‏‌های پیش‌نیاز جهت استفاده از مخازن HTTPS

برای فعال کردن مخازن Docker ، کلید رسمی Docker دارای اهمیت است. روش اضافه کردن کلید رسمی GPG Docker به لیست مخازن APT:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
افزودن کلید رسمی داکر جهت استفاده از مخازن اصلی و استاندارد

حتی پس از نمایش تائیدیه ، جهت اطمینان از افزوده شدن صحیح کلید دستور زیر را در خط فرمان وارد کنید:

sudo apt-key fingerprint 0EBFCD88
بررسی صحت افزوده شدن کلید

در مورد داکر ، سه مخزن مختلف وجود دارد – مخزن “پایدار” (برای همه توصیه می شود) ، “شبانه” یا “تست”. بگذارید مخزن “پایدار” را پیکربندی کنیم.

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu
 bionic stable"
افزودن مخزن پایدار

نکته:اگر هر کدام از مخازن تست (test) یا شبانه(nightly) را برای نصب انتخاب کردید. کافی است با کلمه stable در فرمان بالا جابه‌جا کنید.

بعد از اضافه شدن مخزن داکر به لیست مخازن APT حتماً است تا دوباره آن را بروزرسانی کنید تا لیست آدرس‌های نصب داکر درون سیستم شما بارگذاری شود.

sudo apt update
قرار گرفتن آدرس های نصبی داکر درون سیستم و مخزن apt

در نهایت هم دستور زیر را برای نصب داکر وارد می‌کنیم:

sudo apt install docker-ce docker-ce-cli containerd.io
نصب داکر

نصب کامل شد و حالا دیگه می‌توانید از داکر استفاده کنید 🙂

نکات اضافه:

اگر دنبال نصب نسخه خاصی از داکر و افزونه‌های آن هستید به روش زیر عمل کنید

ابتدا دستور زیر را وارد می‌کنیم تا نسخه در دسترس را به ما نمایش دهد

apt-cache madison docker-ce
لیست نسخه‌های قابل نصب داکر

حالا نسخه‌ای را که می‌خواهید نصب کنید در قالب زیر وارد نمایید

sudo apt-get install docker-ce=<نسخه مورد نظر> docker-ce-cli=<نسخه مورد نظر>
containerd.io

خوب آموزشمون در این بخش به پایان می‌رسد اگر نظر یا نکته‌ای دارید با من در میان بگذارید.

نوشته داکر در عمل :: نصب داکر روی دبیان/ابونتو/مینت اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی

مهاجرت برای کار به سبک یک برنامه نویس !!!

مهاجرت های کاری !!!

سلام دوستان گرامی

امیدوارم که جالتون خوب باشه

چندباری دیدم که برخی از دوستان سوال می پرسن که آقا ما شهرستانی هستیم و میخوایم بریم یک شهر بزرگتر ( مثلا تهران یا مشهد یا تبریز یا اصفهان یا … ) کار کنیم چون برای ما برنامه نویس ها در شهر های کوچیک کار نیست و ….

میخوام در این پست اندکی از خوبی ها، سختی ها، تجربیات خودم بگم که برای کار به شهر دیگه ای (مشهد) رفتم تا بتونم در حوزه چیزی که بسیار بهش علاقه مند هستم (برنامه نویسی) کار پیدا کنم و کار کنم.

خب بریم سر اصل ماجرا !!!!!

ارسال رزومه

عرضم به حضورتون که اوایل سال ۹۸ بود ( اریبهشت تقریبا ) که خدمت مقدس سربازی من داشت تموم می شد و باید کم کم دیگ دنبال کار می گشتم !!! در مرخصی پایان دوره ( خدمت رفته ها می دونن پایان دوره ینی چی 🙂 ) بودم که به فکر رفتم که باید کم کم دنبال کار باشم و در سایت های کاریابی و استخدامی مثل جابینجا و … دنبال کار می گشتم اما هنوز می ترسیدم که رزومه ارسال کنم و ترس اصلیمم این بود که هنوز تکلیف خدمتم صددرصد معلوم نیس ! هر چند که در اون موقع برای یکی دو تا شرکت رزومه ارسال کردم و یکیشون گفت بیا برا مصاحبه ولی استرس خدمت انقد زیاد بود که نشد برم و کنسلش کردم .

خلاصه گذشت و اواخر اردیبهشت شد و من دیگ اخرین امضا های ترخیصیمو جمع کردم و رسیدم خونه و اولین کاری که کردم یک نفس عمیق کشیدم تا خستگی خدمت از تنم بره بیرون !!!

دومین کاری که کردم شروع کردم به پیدا کردن کار در مشهد !!!

دو روز بعد از اتمام خدمت مقدس سربازی شروع کردم به فرستادن رزومه برای کار هایی که پیدا کردم و ازشون خوشم اومد و از روز بعد شروع کردن به تماس گرفتن برای مصاحبه کردن ( ۴ جا تماس گرفتن که برم برا مصاحبه ) .

همون شرکت اولی که رفتم شروع کردم به صحبت و بخشی از پروژه شونو گفتن و من یک راه حل پیشنهاد دادم که خوششون اومد و با توجه به اینکه میخواستن من بخش بک اند و طراحی API سرویسشونو انجام بدم همونجا لپ تاپم در آوردم و کدی که برای یکی از API های سیستم های تمیرینیم زده بودم رو نشون دادم و تا کد رو دیدم و معماری رو بررسی کردن خوششون اومد و گفتن ک از همین فردا بیا سرکار !!!

راستش من خیلی خوشحال شدم و خدارو شکر کردم که اولین جا خوب دراومد اما دوست داشتم بقیه جاهارو هم برم تا ببینم ایا جای بهتری پیدا می کنم یا نه ! که فرداش رفتم و یک جا دیگم منو می خواستن که خودمم خیلی از سبک کاریشون خوشم میمومد اما چون اصولا آدم پایبندی هستم و دوست ندارم که زیر قولم بزنم با توجه به نیمچه قولی که به شرکت اولی دادم قرار رو بر این گذاشتم که برم پیش همون شرکت برای کار !!!

شروع آوارگی :

شروع آوارگی !! 🙁

در عین حال که کلی خوشحال بودم که کار پیدا کردم در مقابل ناراحت بودم که خب حالا از فردا برم کجا
و شب کجا بخوابمو … !!!!!

اول توافقمون با شرکت بر این باب شد که یک ماهی به صورت آزمایشی برم و کار کنم و بعد اگر از کارم راضی بودن دیگ قرارداد طولانی مدت ببندم، منم برا همین با خودم گفتم خب اول این یک ماهو میرم خونه اقوام و اینور و اونور و اخر هفته ها میرم شهرستان تا اگه بعد از یک ماه اوکی شد و همه چی بر وفق مراد بود برم دنبال خونه بگردم و خونه بگیرم و … .

خلاصه یک ماهی رو به فلاکت آوارگی کشیدم و هر شب خونه یکی و … به طوری که اواخر دیگ یک حس سرباری حس میکردم 😐 … !

خلاصه که سرتونو درد نیارم که یک ماه شد و گفتیم خب دیگ بریم دنبال خونه !!! حالا که رفتیم دنبال خونه میبینم ای بابا با پولی که من دارم خونه نمیشه گرفت :(‌

و باز هم آش و کاسه ما شد آوارگی و ازین خونه به اون خونه رفتن !

تنها شانسی که آوردم این بود که یکی از رفیقام دوستش مشهد خونه داشت و یک ماه اخر رو میرفتم پیش اون ، اما داستان اونجایی جالب شد که اواسط تابستون ( یک ماهی بعد از رفتن به خونه اونا ) بنده خدا گفت من باید خونه رو تحویل بدم و میخوام برم شهرستان !!! گفتنش همانا و آب سرد ریختن روی ماهم همانا !!!

روز تحویل رسید و رفتم وسایلامو برداشتم و شبش رفتم خونه یکی از اقوام و فرداش ک از شرکت اومدم بیرون رفتم میدون شهدا ( مشهدی ها میدونن کجاست ) نشستم و داشتم به سمت حرم نگاه میکردم !!!

خیلی صحنه عجیبی بود، حس این که دیگ جایی نداری !!! بعضی وقتا انقدر فشار بهم میومد که میگفتم محمد بیا و بیخیال شو برو همون شهر خودت کارگری بکن ولی این آوارگی رو نکش !

باز از ی طرف دیگ میگفتم بری میشی سرباز شکست خورده و …. .

خلاصه وایستادم و اون شب کوشی رو برداشتم و به یک شماره که چند وقت پیش گیراورده بودمش ( شماره مالک یک پانسیون بود ) تماس گرفتم که برم و یکی از اتاق هاش رو اجاره کنم ( من به خاطر خلقیاتی که دارم دوست داشتم تنها خونه بگیرم تا برم پانسیون ولی دیگ مجبور شدم و … )

خلاصه رفتیم پانسیون، با همه سختی هایی که برام داشت و نمیتونستم باهاش خوب کنار بیام ولی همین که فکر میکردم دیگه سربار کسی نیستم یک حس خیلی خوبی بهم میداد که میگفتم کاش از روز اول سختی پانسیون رو تحمل میکردم ولی سربار کسی نمیشدم.

یک نتیجه گیری دوستانه :

من توصیم به دوستان اینه که برای علاقه ای که دارید و در محل زندگی شما نیست برای به دست آوردنش، سفر کنید، حتی اگر سختی بکشید.

من ازین سفرم فهمیدم به دست آوردن خوشی با خوشی نمیشه،‌باید سختی بکشی تا بتونی به چیزی که باهاش به آرامش میرسی برسی.

من با برنامه نویسی آرامش پیدا میکردم و برای پیدا کردن این آرامش پی خیلی از سختی هارو به خودم مالیدم و وارد شهری جدید با کلی چالش جدید شدم.

اما اگ سفر کردید سعی کنید اگ اخلاقتون مثل منه و زود حس سرباری بهتون دست میده از همون اول یک پانسیون دانشجویی یا کارمندی پیدا کنید و با دادن مبلغ کمتری نسبت به اجاره خونه با خیال راحت تری به کارتون برسید.

همچنین اینایی که گفتم فقط تجربیاتی از سختی نحوه زندگی بود و وارد صحنه های و دوشواری های کاری و فنی نشدم دیگه.

امیدوارم وقتی که برای خوندن این مطلب گذاشتین رو الکی هدر نکرده باشم.

و من الله توفیق.

نوشته مهاجرت برای کار به سبک یک برنامه نویس !!! اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی

وبلاگ نویس نیستم ولی وبلاگ نویس ها رو دوست دارم

فکر کنم پانزده سال پیش بود که کامپیوتر وارد زندگی من شد و تجربه ی استفاده از این ابزار فوق العاده برای من بی نظیر بوده و هنوز هم هست.

تا چند سالی تمام استفاده من از کامپیوتر خلاصه می شد به بازی، گوش دادن به آهنگ، تماشای فیلم و … و چون هنوز اینترنت dialup بود و تو خانواده ما اینترنت بد معنی شده بود از فضای نت فاصله داشتم و با خیلی از مفاهیم آشنایی نداشتم تا اینکه از طریق خاله ام با وبلاگ آشنا شدم و تو سایت بلاگفا یک بلاگ دو نفره درست کردیم و اسمش رو گذاشتیم ((از اون کارا)) که بر عکس اسمش اصلا محتوای بدی داخلش منتشر نمی کردیم و فقط خاطراتی از سوتی های مادر و مادر بزرگ می نوشتیم دوران باحالی بود تا اینکه به خاطر درس خاله ام دوباره از فضای وب فاصله گرفتم و تمام استفاده ام از اینترنت شده بود دانلود آهنگ، بازی، فیلم و یا انجام پروژه های درسی تا یک سال پیش که وارد یک استارت آپ شدم و درگیر اینترنت شدم و اونقدر جذب این فضا شدم، تصمیم گرفتم که جدی تر وارد دنیای وب بشم و شروع کردم به یادگیری برنامه نویسی و احساس میکنم از بهترین تصمیم های زندگیم بوده و به نظرم با پیشرفت تکنولوژی دنیای به جای بهتری تبدیل میشه.

شاید از نظر خیلی ها دیر باشه و شاید با توجه به مشغله کاری نشه خیلی تو این زمینه پیشرفت کرد ولی میدونم که قراره کار های بزرگی تو این زمینه انجام بدم

شاید از نظر خیلی ها دیر باشه و شاید با توجه به مشغله کاری نشه خیلی تو این زمینه پیشرفت کرد ولی میدونم که قراره کار های بزرگی تو این زمینه انجام

نوشته وبلاگ نویس نیستم ولی وبلاگ نویس ها رو دوست دارم اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی

دوره هوش مصنوعی و یادگیری ماشین کوئرا

الان که دارم مینویسم حدودا یک سال از اون روزی که برای اولین بار راجع به هوش مصنوعی تحقیق کردم میگذره.از اون روزای گرم تهران بود .از دانشگاه رسیدم خوابگاه و طبق عادت پریدم رو تشکم که همیشه گوشه اتاق پهن بود و رفتم تو گوشیم .یادم نمیاد با کدوم لینک یا سایت شروع کردم ولی یادم میاد که اولین چیزایی که پیدا کردم پادکست هوش مصنوعی استرینگ کست و یکی دوتا پادکست رادیو گیک جادی بود.خیلی برام جالب بود. دنیای هوش مصنوعی خیلی بزرگه اینقدر بزرگ که هیچ رویا و ایده ای رو نامید نمیکنه اصلا یکی از جذابین هاش همینه.

یه خرده که گذشت مشغله هام و کارام باعث شد نتونم زمانی بهش اختصاص بدم و این یه سال همش داشتم کد میزدم و تو دنیای برنامه نویسی غوطه ور بودم که البته کلی هم حال داد .اما یه گوشه ی ذهنم همیشه دنبال AI بود .

تا اینکه چند روز پیش این دوره ی کوئرا (لینک دوره) دیدم و با پیش زمینه ای که از کوئرا دارم فکر میکنم دوره خیلی خوبی از آب در بیاد و باعث بشه که راه رفتن تو این قلمروی جدید رو بیاد بگیرم.

این شد که اومدم اینجا و این متن و نوشتم شاید کسی دیگه هم مثل من علاقه مند باشه و این دوره براش جالب باشه .الان تو دوره پیش ثبت نام هست و میتونید با تخفیف ثبت نام کنید.

نوشته دوره هوش مصنوعی و یادگیری ماشین کوئرا اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی

۱۰ ترند هوش مصنوعی در چند سال آینده

از زمانی که جهان برای اولین بار با هوش مصنوعی آشنا شد، سال‌ها گذشته است. حالا این فناوری نه تنها ابزار دست کسب و کارها شده، که کاربران معمولی هم به راحتی به آن دسترسی دارند.

هوش مصنوعی امروزه کمک‌یار همه صنعت‌های جهان شده است. توانایی شگرفی که هوش مصنوعی برای پردازش مجموعه‌داده‌های حجیم و استفاده از آنها برای هدف‌های مختلف دارد، به کسب و کارها کمک کرده تا عملکردشان را به شکل قابل توجهی بهبود ببخشند و بتوانند یک مجموعه‌ خدمات کاملاً جدید به کاربران عرضه کنند.

همه ما با دستیارهای مجازی، خانه‌های هوشمند، اپلیکیشن‌های شخصی‌سازی شده، و گجت‌های هوشمند آشنا هستیم. وقتی اولین بار با آنها روبرو شدیم، حسابی حیرت کرده بودیم؛ اما حالا خیلی از آنها را بخش روزمره زندگی‌مان می‌دانیم. اما آیا این اوج چیزی است که هوش مصنوعی می‌تواند عرضه کند؟ یا اینکه آینده این فناوری قرار است باز هم پر از سورپرایز‌های شگفت‌انگیز باشد؟ در ادامه، چندی از پرطرفدارترین کاربردهای هوش مصنوعی در جهان امروز را برایتان معرفی می‌کنم که آینده‌مان را درخشان خواهند کرد.

۱. شخصی‌سازی پیشرفته

این یک حقیقت است: همه کاربرها عاشق شخصی‌سازی هستند! اگر فروشگاه آنلاینی محصولات جدید را بر مبنای خریدهای قبلی مشتریان به آنها پیشنهاد کند، ۵۶% این مشتریان علاقمند خواهند بود که باز هم به این سایت سر بزنند. اگر تبلیغی شخصی‌سازی شده باشد، نرخ CTR آن ده برابر یک تبلیغ عمومی می‌شود. ابزارهای هوش مصنوعی می‌توانند داده‌های مشتریان را جمع‌آوری و پردازش کنند و بر مبنای آنها، محصولات یا خدمات مناسب برای یک شخص بخصوص را پیشنهاد دهند. برای صنعت تجارت الکترونیک که همه چیزش بر محور مشتریان و عادت‌های خرید آنها می‌چرخد، این قابلیت خیلی ارزشمند است.

اما فقط تجارت الکترونیک نیست که از شخصی‌سازی با هوش مصنوعی سود می‌برد. پشت اپلیکیشن‌های تناسب اندام پرطرفدار این روزها هم هوش مصنوعی ایستاده است. این اپلیکیشن‌ها می‌توانند با تحلیل عادت‌های کاربر، رژیم غذایی یا تمرینات ورزشی پیشنهاد دهند که اختصاصی به درد شخص خود کاربر بخورد. اصلا چرا به یکی دو حیطه اکتفا کنیم؟ هر کسب‌وکاری با هر موضوعی می‌تواند با هوش مصنوعی کارهای هیجان‌انگیز بکند: کافی است که آن کسب و کار به شخصی‌سازی تجربه مشتری علاقمند باشد.

۲. جستجوی تصویری

قابلیت جستجوی تصویری پینترست

درست است که این کاربرد نسبتاً قدیمی است، اما هنوز پتانسیل زیادی برای پیشرفت دارد. چند سال قبل، پینترست قابلیت لنز خود را به بازار معرفی کرد (Pinterest Lens). این قابلیت، مثل Shazam برای اشیا بود. کاربر می‌توانست هر شیئی که می ‌خواست را با دوربینش اسکن کند، و بعد نرم‌افزار، اشیای مشابه آن شیء را در پینترست جستجو می‌کرد. حالا دیگر غول‌های صنعت مثل گوگل و مایکروسافت هم امکان جستجوی تصویری را فراهم کرده‌اند و به نظر می‌رسد که این کاربرد هوش مصنوعی حسابی در دنیای نرم‌افزار جا خوش کرده است.

با جستجوی تصویری، کاربران می‌توانند در کسری از ثانیه نتایج بسیار دقیقی برای جستجوی خود دریافت کنند. از آنجا که کاربر از قبل می‌داند دقیقاً دنبال چه چیزی است، نتایج دریافتی‌اش صد درصد با چیزی که جستجو کرده تناسب دارند. هر صنعتی می‌تواند از چنین سرویسی سود ببرد، اما حیطه تجارت الکترونیک به طور خاص از همه بیشتر به آن اهمیت خواهد داد.

۳. چت‌بات‌ها و دستیارهای مجازی

در آینده خیلی نزدیک، دستیارهای مجازی و بات‌ها گسترش بیشتری پیدا می‌کنند و «باهوش‌تر» می‌شوند. به این ترتیب، کارمندان از شر کارهای حوصله‌سربری مثل جواب دادن به سوال‌های زیادی ساده یا انجام وظایف روتین خلاص خواهند شد.

استفاده از بات‌ها نه تنها برای کارمندان رهایی‌بخش است، که باعث صرفه‌جویی در وقت کاربران هم می‌شود. برخلاف انسان‌های واقعی، بات‌ها بلافاصله جواب سوال کاربر را به او ارائه می‌کنند. به این ترتیب، کیفیت تجربه کاربری هم بالا می‌رود، زیرا مشتری می‌تواند اطلاعات بسیار دقیق و صحیح را بدون اینکه مدت‌ها پشت خط منتظر بماند، دریافت کند.

بات‌ها به افراد در خرید کمک می‌کنند، خدمات مختلف و محصولات گوناگون را بر مبنای نیاز فردی کاربر برای او انتخاب می‌کنند، سفارش آنها را می‌گیرند، و وضعیتشان را تعقیب می‌کنند. در زمینه دستیارها هم باید بگویم که همین حالا هم آمازون دستیار خرید الکسا را به بازار معرفی کرده است. به زودی ممکن است عده بیشتری از این کمک‌یارهای مجازی را هم ببینیم و آنها با انجام طیف وسیعی از کارها، زندگی ما را آسان‌تر ‌کنند.

۴. تحلیل‌های پیشگویانه

در دنیای دیجیتال امروز، همه برنامه‌ها به داده‌ها متکی هستند. داده‌های مشتری معدنی از طلاست: پر از بینش در مورد رفتارهای مشتری هنگام خرید و پیش‌بینی تصمیمات آینده وی. ولی تحلیل پیشگویانه (Predictive Analytics) چیزی فراتر از پیش‌بینی خریدهای بعدی مشتریان است. لازم نیست به آینده فکر کنیم؛ همین حالا هم در صنعت پزشکی، تحلیل‌های پیشگویانه به تخمین زدن احتمال بیماری در آینده کمک می‌کنند. حتی در دنیای حسابداری می‌شود اعتبار و شهرت قرض‌گیرنده‌ها را با همین نوع تحلیل‌ها سنجید.

به خاطر ارزش افزوده‌ای که تحلیل‌های پیشگویانه برای صنایع دارند، در آینده خیلی نزدیک شاهد توسعه فعالانه‌تر این تحلیل‌ها خواهیم بود. آنها به کسب و کارها کمک خواهند کرد تا استراتژی‌های قابل اتکاتر و قابل اعتمادتری پیش بگیرند و درآمدشان را هم به شکل قابل توجهی بالا ببرند.

۵. تشخیص چهره

رباتی که با فناوری تشخیص چهره، شخصیت «والدو» را از بین همه این شخصیت‌ها با دست نشان می‌دهد!

اخیراً فناوری تشخیص چهره بازتاب‌های منفی در رسانه‌ها داشته‌ است. به عنوان مثال خبرهای مربوط به Deepfake که این روزها نگرانی‌های زیادی را در سطح افکار عمومی ایجاد کرده یکی از آن‌هاست. (و اگر فکر می‌کنید می‌توانید ویدئوهای تقلبی ساخته‌شده توسط هوش‌مصنوعی را از ویدئوهای واقعی تشخیص دهید، کافی است این لینک را نگاهی بیندازید!)

اما این فناوری در این سال و سال‌های آتی به رشد خود ادامه خواهد داد. فناوری تشخیص چهره، یک تکنیک هوش مصنوعی است که با آن می‌شود با مقایسه الگوی مشخصات چهره‌ای افراد با عکس دیجیتالشان، آنها را شناسایی کرد.

در سال پیش رو، کلی استفاده‌ جدید برای فناوری تشخیص چهره خواهیم دید و خیلی از آنها دقت و اعتبار خیلی بالاتری هم پیدا خواهند کرد. به عنوان مثال، برنامه دیپ‌فیس (Deepface) فیس‌بوک که با آن اعضای خانواده و دوستانتان را در عکس‌ها تگ می کردید، حسابی رشد خواهند کرد. امروزه دیگر هر گوشی هوشمندی که به بازار می‌آید یک قفل چهره هم دارد؛ این قفل‌ها هم در تشخیص تفاوت چهره شما و خواهر و برادرتان تواناتر خواهند شد!

استفاده از فناوری تشخیص چهره برای شناسایی بیومتریکی به این زودی‌ها قرار نیست از میان برود؛ از تبلیغات گرفته تا ارسال محموله‌های کالا برای استفاده از این فناوری جا دارند. استفاده از قابلیت تشخیص چهره برای کاربرها آسان است و به شکل غیرتهاجمی هم انجام می‌شود؛ بنابراین هر روز بیشتر از دیروز به رشد خود ادامه خواهد داد.

از دیگر جاهایی که می‌توان فناوری تشخیص چهره را در آنها به کار برد، پردازش پرداخت‌ها از طریق بررسی‌های امنیتی و قانونی است. در شاخه پزشکی هم می‌توان از آن برای آزمایش‌های بالینی و تشخیص‌های پزشکی استفاده کرد. اوپن‌واتر (Openwater) که یکی از فناوری‌های تصویربرداری پزشکی قابل حمل است، دارد مرزهای عکس‌برداری از مغز را در می‌نوردد.

۶. هم‌گرایی هوش مصنوعی و بلاک‌چین

همه ما می‌دانیم که تکنولوژی بلاک‌چین با مشکلاتی همچون ناتوانی در مقیاس‌پذیری (Scalability) روبرو است. از آن طرف، هوش مصنوعی هم با مسائل مربوط به اعتماد و حریم خصوصی سر و کله می‌زند. اما اگر این دو فناوری با هم ترکیب شوند، می‌توانند به کمک هم از پس این چالش‌ها بربیایند.

با ایجاد فروشگاه‌های غیرمتمرکز، بلاک‌چین می‌تواند به قابل اعتماد بودن و شفافیت الگوریتم‌های هوش مصنوعی کمک کند. به عنوان مثال، انیگما (Enigma) استارتاپی است که فروشگاه امنی برای داده‌ها فراهم می‌کند، و کاربران می‌توانند از طریق قراردادهای هوشمند Subscribe کرده و به این داده‌ها دسترسی داشته باشند.

۷. ورود تراشه‌های مناسب هوش مصنوعی به بازار

هوش مصنوعی پردازنده‌های مخصوصی می‌خواهد که عملکرد CPU را تکمیل کنند. مدل‌های پیشرفته CPU نمی‌توانند سرعت مدل‌های یادگیری هوش مصنوعی را افزایش دهند. اگر قرار است مدل هوش مصنوعی بتواند با حل مسئله‌های پیچیده ریاضی، سرعت تشخیص چهره و اشیا را بالا ببرد، باید سخت‌افزارهای اضافه‌ای داشته باشد.

تولیدکنندگان تراشه مثل ان‌ویدیا (Nvidia)، آرم (ARM)، اینتل (Intel)، و کوالکام (Qualcomm) تراشه‌های مخصوصی خواهند ساخت که بتواند سرعت اپلیکیشن‌های هوش مصنوعی را افزایش دهد. (AI-enabled Chips) این تراشه‌های خاص بسته به نوع کارکردی که قرار است داشته باشند، متفاوت خواهند بود؛ مثلا تراشه‌های مناسب برای پردازش زبان‌های طبیعی یا تشخیص گفتار با تراشه‌های بینایی رایانه‌ای فرق خواهد داشت. اپلیکیشن‌های صنعتی به زودی قرار است برای ارائه خدمات هوش مصنوعی به کاربرانشان به این تراشه‌ها متکی شوند.

۸. هم‌گرایی هوش مصنوعی و اینترنت اشیا

در سال‌های پیش رو، هوش مصنوعی و اینترنت اشیا در دنیای محاسبات لبه‌ای (Edge Computing) به هم خواهند رسید. همین حالا هم نمونه‌هایی از هم‌گرایی این دو فناوری را داشته‌ایم؛ به عنوان مثال، اگر اینترنت اشیا و هوش مصنوعی با هم ترکیب نمی‌شدند ما نمی‌توانستیم ماشین خودران بسازیم. اما این دو فناوری هنوز پتانسیل‌های کشف نشده زیادی برای همکاری دارند. سنسورهای اینترنت اشیا می‌توانند داده‌های هر لحظه را جمع‌آوری کنند و مدل‌های هوش مصنوعی می‌توانند امکان تصمیم‌گیری اتوماتیک با این داده‌ها را فراهم نمایند. علاوه بر این، الگوریتم‌های یادگیری عمیق (Deep Learning) هم کمک می‌کنند تا تصمیماتی که بر مبنای داده‌های سنسورها گرفته شده، به اقدامات عملی تبدیل شوند. بعضی از این اقدامات عبارتند از تعقیب حرکت چشم برای نظارت بهتر بر راننده، مشخص کردن مسیر، حرکت اتوماتیک به سمت پمپ بنزین در صورت کم شدن بنزین، یا پردازش زبان‌های طبیعی برای دریافت فرمان‌های صوتی.

اینترنت اشیا حالا دیگر آماده است تا هوش مصنوعی را به جلو براند. خدمات لبه‌ای به تراشه‌های مخصوص هوش مصنوعی مجهز خواهند شد که بر پایه ASIC و FPGA ساخته شده‌اند.

۹. سیاست‌گذاری و حریم خصوصی

یادتان هست که پارسال ناگهان اینباکس‌مان پر از خروار خروار ایمیل‌های سایت‌ها در مورد تغییر Privacy Policy شد؟ همه آن تغییرها بخاطر اجرایی شدن مقررات عمومی حفاظت از داده اتحادیه اروپا (GDPR) بود که یکی از داغ‌ترین خبرهای سال تلقی می‌شد. امسال و سال بعد هم قرار است اخبار بیشتری در مورد سیاست‌گذاری و حریم خصوصی بشنویم.

اغلب ما هنوز هم نمی‌دانیم که اطلاعات دیجیتالمان در سطح اینترنت چگونه نگهداری می‌شود. با این حال، بحران بزرگ حریم خصوصی فیس بوک باعث شد که در مورد خصوصی ماندن داده‌های دیجیتالمان کمی هشیارتر شویم. برای همین هم مسئله سیاست‌گذاری برای حریم خصوصی، در سال‌های آتی همچنان یکی از دغدغه‌های اساسی دولت‌ها و قانون‌گذاران خواهد بود. با افزایش روزافزون استفاده شرکت‌های نرم‌افزاری از هوش مصنوعی، مسئله رضایت افراد از استفاده شرکت‌ها از داده‌های هوش مصنوعی‌شان، اهمیت بسیار زیادی پیدا خواهد کرد. قوانین فعلی در مورد هوش مصنوعی نیاز به بازبینی پیدا خواهند کرد و در سرتاسر دنیا، کشورها به تلاششان برای وضع مقررات برای اپلیکیشن‌های هوش مصنوعی ادامه خواهند داد.

۱۰. مسائل اجتماعی‌اقتصادی

حالا که هوش مصنوعی هر روز محبوب و محبوب‌تر می‌شود، یک سوال واحد ذهن همه را به خود مشغول کرده است: آیا هوش مصنوعی قرار است روزی شغل‌های مختلف را به کلی از میان ببرد؟

جواب این است که بستگی دارد. هرجا که منابع موجود محدود باشند، هوش مصنوعی جای مشاغل مختلف را خواهد گرفت؛ اما در عین حال مشاغل جدیدی ایجاد می‌کند که هرکدام به مجموعه مهارت‌های مختلفی نیاز دارند. همچنین حتی اگر خودکار کردن فرآیندها نیاز به برخی مشاغل را از بین ببرد، باز هم بعضی شغل‌ها هستند که همیشه برای جامعه لازم خواهند بود؛ مثل معلمی، مراقبت و پزشکی، و خدمات مشتریان.

پاسخ درست به این سوال هرچه که باشد، ذهن دولت‌های مختلف و مجمع جهانی اقتصاد را حسابی به خود مشغول کرده است. بحث‌های داغی سر این قضیه در این مجامع جریان گرفته است، چون این نگرانی وجود دارد که با ظهور اپلیکیشن‌های هوش مصنوعی، اختلاف بین میزان مهارت‌های افراد و میزان مهارت‌های مورد نیاز برای مشاغل بیشتر از قبل شود و جوامع به سمت دوقطبی شدن بروند. قانون‌گذارانی که به دنبال راه حل برای این مشکل هستند، در سال‌های آتی بر برنامه‌های بازتوزیعی تمرکز خواهند کرد.

جمع‌بندی

به نظر می‌رسد استفاده از هوش مصنوعی برای تحلیل داده‌ها و ارائه خدماتی شگفت‌انگیز به کاربران، هر روز در حال افزایش است. نه تنها استفاده از هوش مصنوعی کمتر نخواهد شد، که با گذشت زمان تعداد زیادی ترند جدید هم برای این فناوری خواهیم دید که یکی از یکی هیجان‌انگیزترند! بخصوص در دنیای توسعه موبایل، بعضی از پیشروان صنعت معتقدند که هوش مصنوعی یکی از آن فناوری‌هایی خواهد شد که هر شرکت اپلیکیشنی باید حتماً آن را داشته باشد؛ یعنی همانقدر رایج شود که خدمات ابری امروز هستند. انگار بیراه هم نمی‌گویند؛ به نظر می‌رسد که ستاره اقبال هوش مصنوعی به این زودی‌ها قصد افول ندارد.

ترجمه بر اساس:


? اگر به یادگیری کاربردهای هوش مصنوعی برای تحلیل داده علاقه‌مند شدید، پیشنهاد می‌کنیم سری هم به دوره جدید کوئراکالج، یعنی «دوره هوش مصنوعی و یادگیری ماشین» بزنید. این دوره که با داده‌های واقعی و تمرین‌های بسیار سر و کار دارد، الآن در مرحله پیش‌ثبت‌نام رایگان قرار دارد.

نوشته ۱۰ ترند هوش مصنوعی در چند سال آینده اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی

مقدمه ای بر JUnit

آزمایش و تست بخش اساسی تولید نرم افزار است و منجر به افزایش اطمینان پذیری کد و دستورات نوشته شده برنامه نویسان میشود. با وجود کد های تست نوشته شده و اجرای آنها قبل از ارائه نسخه جدید از برنامه باعث می شود تنها خطاهای کوچکی در نرم افزار باقی بماند.

در این مقاله نمیخواهم تمام ویژگی های JUnit را معرفی کنم، اما یک سیر کامل از چگونگی استفاده و اجرای آن را برای توسعه دهندگان جاوا نمایش خواهم داد . سورس کد این برنامه در سایت گیت هاب قابل دریافت خواهد بود.

درک تست ها

قبل از تعریف مجموعه ای از تست ها ما باید فلسفه و دلیل پشت Test Case ها درک کنیم و بدانیم که ظرفیت یا تاثیر حد اکثری آن را بکار بگیریم. زمانی که شما کد یا قطعه ای از برنامه را می نویسید، شما امیدوار هستید آنطور که می خواهید پیش برود. برای مثال اگر شما یک برنامه ماشین حساب را می نویسید، انتظار خواهید داشت در جمع دو عدد ۱ و ۰ نتیجه برابر با عدد یک باشد. اگر اینطور نبود برنامه شما اشتباه عمل کرده است . به بیان عمومی تر ما با استفاده از Test Case میخواهیم به مشخصه هایی که برنامه با بدست آوردن آنها بدقت و کارایی صحیح دست پیدا میکند را شناسایی خواهیم کرد.


تعریف Test

ما با استفاده از تست میتوانیم میزان دقت برنامه را در موارد استفاده از پیش تعیین شده اش را بسنجیم. در مثال ما برنامه ماشین حساب قرار بود با استفاده از عملیات محاسباتی و این امر نیز از ویژگی ها و قابلیت های اصلی برنامه به شمار می آمد. ما باید آزمایش کنیم که برنامه ما برای وروردی های ثابتی مانند ۰و۱ نتیجه درستی را باز میگرداند یا خیر.

لازم بذکر است که امروزه در مدیریت تیم های توسعه به صورت AGILE از تست ها یا آزمایش های خودکار استفاده میشود که با پیکربندی و روش های ساده ای میتوانند بعد از هر تغییر به صورت خودکار اجرا شوند . بعد از گذشت دو دهه فریم ورک های فراوانی برای Automated Testing ارائه شد اما JUnit معروفترین آنها در زمان جاری به حساب می آید.


راه اندازی تست ها در پروژه

برای ایجاد پروژه با امکان استفاده از این فریم ورک کافیست تا dependency های زیر را به پروژه اضافه کنیم.

آزمایش یک Feature

اولین گام برای نوشتن تست برنامه ایجاد قابلیت یا feature برای برنامه است. برای مثال برنامه ی ساده ی ماشین حساب را در نظر بگیرید. ماشین حساب در مثال ما تنها یک عمل ساده جمع دو عدد را انجام می دهد.

ایجاد یک Test Case

با ساخت یک کلاس اختصاصی برای رفتار های مورد نیاز تست برنامه ماشین حساب تحت عنوان Calculator Test می توانیم مانند مثال زیر با کمک annotaion ساده ی @Test یک متد ساده تست ایجاد کنیم.

فرایند پیاده سازی شده در این تست شامل گام های زیر است.

  1. Given
  2. When
  3. Then

در مراحل مشحص شده ابتدا از کلاس های مورد نیاز نمونه سازی خواهیم کرد و سپس در مرحله دوم متد مورد نظر را فراخوانی میکنیم و سپس نتیجه را درون حافظه نگه داری می کنیم تا در ادامه با استفاده رفتار های استاندارد تست مانند Assertion جواب یا خروجی متد را راستی آزمایی کنیم.

متد های مختلفی برای راستی آزمایی در تست Case های نوشته شده با استفاده از روش Assertion وجود دارد که در تصویر زیر می توانید آنها را مشاهده کنید.

دوستان عزیز توجه داشته باشید که نتیجه فراخوانی تمامی متدهای فوق در تست Case های نوشته شده در کلاس های تست شما بایستی مقدار True را به عنوان جواب و خروجی در بر داشته باشند. در غیر اینصورت تست های شما Failed خواهد شد.

وابستگی های Mock در تست Case ها

در فرایند اجرای تست نباید فراخوانی متد های کلاس های نوشته شده تاثیرات و تغییرات دائمی و واقعی بروی اطلاعات اصلی سیستم و … ایجاد کنند. بنابراین باید نسخه ای از کلاس های پایه ی تست های شما در محیط تست استفاده شوند که به صورت واقعی و دائمی بروی اطلاعات و سیستم تاثیر نگذارند و تنها در چرخه اجرای تست به کار گرفته شوند. Mockito بهترین فریم ورک تجربه شده توسط بسیاری از افراد تا به امروز برای ساخت نشخه های Mock از کلاس های شما عزیزان برای استفاده در Test Case ها می باشد.

برای استفاده از این فریم ورک کافیست که تغییرات کمی را مانند شکل زیر در Pom.xml پروژه دلخواه تان انجام دهید.

دوستان عزیز بعد از افزودن این وابستگی یا dependency به پروژه تون میتونین با استفاده از متد mock() از کلاس Mockito از کلاس های پایه ی مورد استفاده در Test Case هاتون با خیال راحت تست های مورد نظرتون رو اجرا کنید درست هونطور که در شکل زیر مشاهده می کنید.

برای مطالعه بیشتر در خصوص این فریم ورک عالی پیشنهاد می کنم به سایت رسمی مستندات Mockito مراجعه کنید.

اجرای تست ها به صورت دستی

در صورتی که از ابزار maven در پروژه هاتون استفاده میکنید کافیه دستور mvn test رو در ترمینال اجرا کنید .

در صورتیکه از ابزار Intelij IDEA استفاده میکنید هم میتوانید مثل تصویر زیر عمل کنین.

نتیجه گیری

یه برنامه نویس خوب همیشه سعی می کنه برای برنامه هاش تست بنویسه.

شاد باشین دوستان و همیشه تو حوزه برنامه نویسی با زبان های شی گرا رو کمک حامد سهامی دوستدار شما عزیزان در واتس آپ و لینکدین حساب کنید.

نوشته مقدمه ای بر JUnit اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی

سرآغاز یک آغاز

میگن برو ویرگول بنویس

قبلنا میگفتن برو گیت بنویس‌آ حالا شده ویرگول

تخصص‌م رو میگم

اندروید کار بودم که همیشه وقتی یک تیکه کد تمیز یا یک لایبرری دست‌سازم رو به کسی میدادم میگفت بابا خفن، برو گیت بنویس، برای آیندت خوبه، رزومه میشه

جاوا نویسی رو بعد ۵ سال گذاشتم کنار (خودش داستان داره که چی شد اندروید نویسم شدم ولی فقط تا همینجا که خدا بیامرزه پدر استاد راهنمای خوبی که از ترم ۴ هول‌و‌بلای کار رو انداخت بجونمون استاد اکبرزاده)

اوایل سربازی بود که رفتم سراغ ios نوشتن

حالا بعد از سه سال حس نوشتن اومده .

ویرگول مینویسم ان‌شاالله[ویرگول] کدهاش هم گیت میکنم تا بماند برای همه.

همچی در هم

swift.ios.xcode.java.android.androidStudio.plugins.php.api.

داشتم میزدم پست منتشر بشه

فکر کردم دیدم که واقعا برای چی میخوام بنویسم

میخوام بنویسم به خاطر خودخواهیم، چون یاد دادن به دیگران حس خوب بهم میده

نوشته سرآغاز یک آغاز اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی

آموزش جاوا – قسمت دوم – کار با IntelliJ IDEA

خب در پست قبل (آموزش جاوا – قسمت اول – اجرای اولین برنامه با جاوا) یه برنامه به زبان جاوا نوشتیم و اجرا کردیم. حالا

جواد پرسیده راه راحت تری نیست، بریم کد رو توی یه ادیتور بنویسیم، یکبار دستور کامپایل رو بزنیم یک بار هم دستور اجرا، نمیشه همه اینها یکجا انجام بشه؟!

پاسخ: چرا نمیشه! استفاده از IDE!

جواد : حالا IDE چیه؟

خب IDE یا Integrated development environment یا محیط یکپارچه توسعه یک نرم افزاره که ادیتور، دیباگر، کامپایلر و محل نمایش خروجی رو یکجا داره!

جاوا IDE های مختلفی داره Eclipse، NetBeans و IntelliJ IDEA که پیشنهاد من برای توسعه راحت تر برنامه ها به زبان جاوا استفاده از IntelliJ هست، چون پیشنهادات خوبی برای تصحیح کد میده در کد نویسی، برای خوندن مستندات کتابخونه ها در حین کد زنی بسیار کار رو راحت میکنه، توی خطاگیری و نمایش محل خطا بسیار قوی هست و تصحیح خطا ها رو تا حدودی بصورت یکپارچه انجام میده و کار رو راحت تر میکنه.

دوتا میانبر کاربردی داره! یکی Alt+Enter و Ctrl+Space که اولی در تصحیح کد و دومی در پیشنهاد ادامه کد و نمایش محتویات کلاس کمک میکنه.

نصبش هم مثل آب خوردنه! چون تحریمه میتونید از سایت های داخلی دانلود کنید. کافیه عبارت

دانلود IntelliJ IDEA 

رو در گوگل جستجو کنید و از نتایجی که میاد دانلود کنید.

نحوه کرک کردنش هم در همون سایت ها توضیح داده شده که اینجا ازش میگذریم.

حالا بعد از نصب قدم به قدم بریم کد آموزش قبلی رو توی IntelliJ اجرا کنیم.

IntelliJ IDEA

بعد از باز کردن IntelliJ این صفحه رو میبینید

صفحه آغازین IntelliJ

گزینه Create New Project رو برای ساختن پروژه جدید انتخاب کنید

صفحه پروژه جدید IntelliJ

در صفحه باز شده از فهرست سمت چپ Java رو انتخاب کنید و Project SDK رو هم بر روی بالاترین ورژن موجود قرار بدین و Next رو بزنید.

در صفحه بعد تیک Create project from template رو بزنید و Commad Line App رو انتخاب کنید و Next رو بزنید.

در صفحه بعد در قسمت Project name نام پروژه، در قسمت Project Location مسیر ذخیره شدن پروژه و در قسمت Base package نام پکیج رو وارد کنید.

جواد: پکیج چیه؟!

در جاوا هر دسته کلاس هایی که به هم مرتبط هستند با روش پکیجیگن دسته بندی میشن و هر زیر دسته با نقطه از دسته مادر جدا میشه

یه قاعده داره که مثلا اگر دامنه آدرس اینترنتی شرکت شما یا خود شما مثلا estakhri.ir هست پکیج های شما با ir.estakhri شروع میشن، وحی منزل نیست و هرچیزی خواستین میتونین بذارین ولی استانداردی که همه دنیا بفهمنش این هست. مثلا گوگل پکیج هاش رو با com.google آغاز میکنه. بعد از اون هم اسم برنامه میاد که اینجا ما گذاشتیم virgool

و حالا Finish رو میزنیم و منتظر میمونیم تا پروژه ساخته شده در محیط IDE باز بشه.

محیط IntelliJ IDEA

خب این محیط IntelliJ IDEA هست. چون ما تمپلیت کامند لاین رو انتخاب کردیم خودش کلاس Main رو ساخت و تابع main() رو هم داخلش نوشت. کافیه ما کد

System.out.println("Hello World!");

رو بهش اضافه کنیم و کد رو اجرا کنیم

برای اجرا دکمه ▶️ (سبز) که در بالا سمت راست هست رو بزنیم.

اجرای پروژه

خب نتیجه خروجی برنامه رو در پایین صفحه در تب Run میبینید.

اگر دقت کنید در لیست سمت چپ یک پوشه out ساخته شده که IntelliJ بعد از کامپایل کلاس ها فایل های .class که در پست قبل گفتیم نتیجه کامپایل هست رو انجا میریزه و نگهداری میکنه.

خب دیگه چی میخواین مثل آب خوردن همه کارا رو توی یک محیط یکپارچه انجام داد براتون. ?

نوشته آموزش جاوا – قسمت دوم – کار با IntelliJ IDEA اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی

پایان پایتون ۲

یک خبر بد برای دوست داران پایتون ۲

پایتون دو بعد از تاریخ ۱ ژانویه ۲۰۲۰ دیگر پشتیبانی نخواهد شد

هرچه سریع تر برای انتقال کد های خود به پایتون ۳ اقدام کنید

وبلاگ من: linuxsw.xyz

برای خواندن پست در وبلاگ کلیک کنید

نوشته پایان پایتون ۲ اولین بار در ویرگول پدیدار شد.

گردآوری توسط ایده طلایی