محبوبیت سرویس های ابری
وقتی از سرویس ابری استفاده میکنید بر مبنای میزان ترافیک هزینه پرداخت می کنید. هر مقدار که ترافیک سایت بالا میرود منابع بیشتری به سایت اختصاص داده میشود . هیچوقت سایت شما از دسترس خارج نمی شود. حتی لازم نیست پشت سیستم باشید و کاری انجام دهید. هر نوع تغییر در میزان دیسک ، رم یا هسته ی سرور با یک کلیک اتفاق می افتد.
فضاهای ابری از همه ی تکنولوژی ها پشتیبانی می کنند. فرقی نمیکند که لینوکس باشد یا ویندوز یا نوع دیتابیس چیست. فقط کافی است که سرویس مورد نظر را انتخاب کنید تا بتوانید شروع به کد نویسی کنید.
سرویس های ابری یکی از دلایل رشد سریع Docker و ابزاری مانند Kubernetes است و خودش یک بازار جدید را بوجود آورده است.
با سرویس ابری حفظ و نگه داری سایت ساده میشود و هزینه ی DevOps به مقدار چشمگیری کاهش پیدا میکند. برای توسعه ی سخت افزاری دیگر نیاز به متخصصین امنیت و شبکه ندارید.
ساتیا نادلا مدیر عامل مایکروسافت به خوبی ارزش سرویس های ابری را متوجه شد و در حال حاضر منابع زیادی را صرف سرویس ابری مایکروسافت یا همان Azure می کند. این بازار که برای مدتها در اختیار آمازون بود حالا یک سردمدار جدید دارد.
وقتی از سرویس ابری استفاده میکنید بر مبنای میزان ترافیک هزینه پرداخت می کنید. هر مقدار که ترافیک سایت بالا میرود منابع بیشتری به سایت اختصاص داده میشود . هیچوقت سایت شما از دسترس خارج نمی شود. حتی لازم نیست پشت سیستم باشید و کاری انجام دهید. هر نوع تغییر در میزان دیسک ، رم یا هسته ی سرور با یک کلیک اتفاق می افتد.
فضاهای ابری از همه ی تکنولوژی ها پشتیبانی می کنند. فرقی نمیکند که لینوکس باشد یا ویندوز یا نوع دیتابیس چیست. فقط کافی است که سرویس مورد نظر را انتخاب کنید تا بتوانید شروع به کد نویسی کنید.
سرویس های ابری یکی از دلایل رشد سریع Docker و ابزاری مانند Kubernetes است و خودش یک بازار جدید را بوجود آورده است.
با سرویس ابری حفظ و نگه داری سایت ساده میشود و هزینه ی DevOps به مقدار چشمگیری کاهش پیدا میکند. برای توسعه ی سخت افزاری دیگر نیاز به متخصصین امنیت و شبکه ندارید.
ساتیا نادلا مدیر عامل مایکروسافت به خوبی ارزش سرویس های ابری را متوجه شد و در حال حاضر منابع زیادی را صرف سرویس ابری مایکروسافت یا همان Azure می کند. این بازار که برای مدتها در اختیار آمازون بود حالا یک سردمدار جدید دارد.
پروژه Hello world با حداقل تنظیمات
وقتی یک پروژه ی ASP Core ایجاد می کنید حجم زیادی از تنظیمات به صورت پیشفرض به پروژه اضافه میشود. برای اینکه ساده ترین و سبکترین حالت الگوی MVC را در ASP Core پیاده کنید باید کمی به عقب برگردید و بعضی از دستورات را دستکاری کنید.
روش انجام این مراحل در پست زیر شرح داده شده است.
https://codehaks.github.io/2017/08/31/Bare-Minimum-Hello-world.html
وقتی یک پروژه ی ASP Core ایجاد می کنید حجم زیادی از تنظیمات به صورت پیشفرض به پروژه اضافه میشود. برای اینکه ساده ترین و سبکترین حالت الگوی MVC را در ASP Core پیاده کنید باید کمی به عقب برگردید و بعضی از دستورات را دستکاری کنید.
روش انجام این مراحل در پست زیر شرح داده شده است.
https://codehaks.github.io/2017/08/31/Bare-Minimum-Hello-world.html
سرویس هوش مصنوعی
هوش مصنوعی علاوه بر آنکه برنامه نویسی پیچیده ای دارد نیاز به حجم بسیار زیادی از اطلاعات دارد تا با تحلیل آن بتواند موارد جدید را تشخیص دهد. نگهداری و پردازش این حجم عظیم اطلاعات در سرورهای شخصی غیر ممکن است.
سرویس هوش مصنوعی مایکروسافت با ارائه ی یک API از طریق وب امکان استفاده از هوش مصنوعی را برای برنامه نویسان فراهم میکند.
سرویس پردازش عکس آن می تواند یک عکس دریافت کند و برای آن تگ انتخاب کند یا محتوای عکس را مشخص کند.
سرویس صدا می تواند صدای مخاطب را تشخیص دهد و آن را به متن تبدیل کند یا به زبان دیگر ترجمه کند.
سرویس دانش می تواند یک متن را دریافت کند و بر اساس آن یک سیستم پرسش و پاسخ ایجاد کند.
این سرویسها رایگان نیست و به همراه سرویس ابری عرضه میشود اما هر کدام می تواند یک برنامه ی ساده را به یک پروژه ی حرفه ای تبدیل کند.
هوش مصنوعی علاوه بر آنکه برنامه نویسی پیچیده ای دارد نیاز به حجم بسیار زیادی از اطلاعات دارد تا با تحلیل آن بتواند موارد جدید را تشخیص دهد. نگهداری و پردازش این حجم عظیم اطلاعات در سرورهای شخصی غیر ممکن است.
سرویس هوش مصنوعی مایکروسافت با ارائه ی یک API از طریق وب امکان استفاده از هوش مصنوعی را برای برنامه نویسان فراهم میکند.
سرویس پردازش عکس آن می تواند یک عکس دریافت کند و برای آن تگ انتخاب کند یا محتوای عکس را مشخص کند.
سرویس صدا می تواند صدای مخاطب را تشخیص دهد و آن را به متن تبدیل کند یا به زبان دیگر ترجمه کند.
سرویس دانش می تواند یک متن را دریافت کند و بر اساس آن یک سیستم پرسش و پاسخ ایجاد کند.
این سرویسها رایگان نیست و به همراه سرویس ابری عرضه میشود اما هر کدام می تواند یک برنامه ی ساده را به یک پروژه ی حرفه ای تبدیل کند.
دلایل رشد python
یکی از نقاط قوت python حجم بالای کتابخانه های آن در زمینه ی هوش مصنوعی و آموزش ماشین است. با توجه به علاقه ی روز افزون شرکتها به استفاده از هوش مصنوعی سریعترین و ساده ترین راه استفاده از پایتون است.
حتی خود مایکروسافت هم SDK مربوط به هوش مصنوعی خود به نام CNTK را فقط برای زبان پایتون عرضه کرده است.
زبان برنام نویسی R هم که برای هوش مصنوعی ، تحلیل داده و آموزش ماشین استفاده میشود رشد مشابهی مانند پایتون داشته است اما از آنجا یک زبان برنامه نویسی جامع نیست در نمودار آمار آن نشان داده نشده است.
به طور کلی رشد علوم داده و هوش مصنوعی دلیل اصلی محبوبت پایتون و R محسوب میشود.
یکی از نقاط قوت python حجم بالای کتابخانه های آن در زمینه ی هوش مصنوعی و آموزش ماشین است. با توجه به علاقه ی روز افزون شرکتها به استفاده از هوش مصنوعی سریعترین و ساده ترین راه استفاده از پایتون است.
حتی خود مایکروسافت هم SDK مربوط به هوش مصنوعی خود به نام CNTK را فقط برای زبان پایتون عرضه کرده است.
زبان برنام نویسی R هم که برای هوش مصنوعی ، تحلیل داده و آموزش ماشین استفاده میشود رشد مشابهی مانند پایتون داشته است اما از آنجا یک زبان برنامه نویسی جامع نیست در نمودار آمار آن نشان داده نشده است.
به طور کلی رشد علوم داده و هوش مصنوعی دلیل اصلی محبوبت پایتون و R محسوب میشود.
آشنایی با GraphQL
معمولا برای دسترسی به داده های یک وب سرویس باید آدرسهای مشخصی را صدا بزنید و روی اطلاعات دریافتی هم کنترلی ندارید. روش GraphQL می تواند جایگزین این سیستم شود و در قالب یک Query اطلاعات مورد نیاز را از سرور درخواست کند.
کتابخانه GraphQL در سرور قرار میگیرد و با یک آدرس اطلاعات وب سرویس را در اختیار کلاینت قرار می دهد. کلاینت در قالب json فرمت داده های مورد نیازش را مشخص می کند و فقط همان را از سرور دریافت میکند.
با GraphQL لازم نیست حجم زیادی از داده را از وب سرویس دریافت کنید و سپس فیلتر کنید. همچنین این ابزار قابلیت join کردن و تهیه ی گزارشهای تو در تو را هم دارد.
هرچند فیسبوک کتابخانه هایی برای استفاده در محیط #C و جاوا اسکریپت تهیه کرده اما GraphQL تنها یک ساختار و یک روش عرضه ی اطلاعات است و شرکتها می توانند آن را به شیوه ی مورد علاقه ی خود پیاده کنند.
معمولا برای دسترسی به داده های یک وب سرویس باید آدرسهای مشخصی را صدا بزنید و روی اطلاعات دریافتی هم کنترلی ندارید. روش GraphQL می تواند جایگزین این سیستم شود و در قالب یک Query اطلاعات مورد نیاز را از سرور درخواست کند.
کتابخانه GraphQL در سرور قرار میگیرد و با یک آدرس اطلاعات وب سرویس را در اختیار کلاینت قرار می دهد. کلاینت در قالب json فرمت داده های مورد نیازش را مشخص می کند و فقط همان را از سرور دریافت میکند.
با GraphQL لازم نیست حجم زیادی از داده را از وب سرویس دریافت کنید و سپس فیلتر کنید. همچنین این ابزار قابلیت join کردن و تهیه ی گزارشهای تو در تو را هم دارد.
هرچند فیسبوک کتابخانه هایی برای استفاده در محیط #C و جاوا اسکریپت تهیه کرده اما GraphQL تنها یک ساختار و یک روش عرضه ی اطلاعات است و شرکتها می توانند آن را به شیوه ی مورد علاقه ی خود پیاده کنند.
آشنایی با Blockchain در بین کوین
بیت کوین اولین جایی بود که بلاکچین کاربرد خودش را نشان داد. هیچ دولت یا سازمانی اطلاعات بیت کوین را نگه داری نمیکند. بلکه این اطلاعات بین نودها پخش است و هر کدام یک کپی از آن دارند.
هر وقت یک تراکنش جدید در بیت کوین اتفاق می افتد اطلاعات آن به عنوان بلاک جدید به زنجیره ی بلاکهای قبلی اضافه میشود.
در بیت کوین هر 10 دقیقه اطلاعات بلاکها باید توسط الگوریتمهای ریاضی سنگین صحت سنجی شود. این کار توسط نودها انجام میشود.
هر نود بعد از انجام محاسبات اطلاعاتش را با سایر نودها به اشتراک می گذارد. اگر 51 درصد نودها به نتیجه ی یکسان برسند اطلاعات نهایی هش میشود و به عنوان بلاک جدید ثبت میشود.
بلاک جدید یک حقیقت یا Fact به شمار میرود و از این رو همه ی نودها دفاتر خود را با آن آپدیت می کنند.
تراکنشها و تشکیل شدن بلاکهای جدید بین کوین را می توانید زنده در سایت زیر مشاهده کنید.
https://blockchain.info/
بیت کوین اولین جایی بود که بلاکچین کاربرد خودش را نشان داد. هیچ دولت یا سازمانی اطلاعات بیت کوین را نگه داری نمیکند. بلکه این اطلاعات بین نودها پخش است و هر کدام یک کپی از آن دارند.
هر وقت یک تراکنش جدید در بیت کوین اتفاق می افتد اطلاعات آن به عنوان بلاک جدید به زنجیره ی بلاکهای قبلی اضافه میشود.
در بیت کوین هر 10 دقیقه اطلاعات بلاکها باید توسط الگوریتمهای ریاضی سنگین صحت سنجی شود. این کار توسط نودها انجام میشود.
هر نود بعد از انجام محاسبات اطلاعاتش را با سایر نودها به اشتراک می گذارد. اگر 51 درصد نودها به نتیجه ی یکسان برسند اطلاعات نهایی هش میشود و به عنوان بلاک جدید ثبت میشود.
بلاک جدید یک حقیقت یا Fact به شمار میرود و از این رو همه ی نودها دفاتر خود را با آن آپدیت می کنند.
تراکنشها و تشکیل شدن بلاکهای جدید بین کوین را می توانید زنده در سایت زیر مشاهده کنید.
https://blockchain.info/
Blockchain
Blockchain Explorer - Bitcoin Tracker & More | Blockchain.com
The most popular and trusted Bitcoin block explorer and crypto transaction search engine.
در PWA اطلاعات صفحه توسط تکنیک Server-Side-Rendering در سرور تولید میشود و به صورت یکجا به مرورگر ارسال میشود. اطلاعات در مرورگر کش میشود و یک اسکریپت کوچک در پس زمینه کار آپدیت اطلاعات صفحه و ارسال نوتیفیکیشن را به عهده دارد.
استفاده از تکنیک SSR سرعت لود شدن صفحه را بالا میبرد و حس اپ های محلی را به کاربر القا می کند. از آنجا که صفحه کش میشود جابجایی میان صفحات بسیار سریع است و هر وقت رویدادی باید به اطلاع کاربر برسد دسترسی به سیستم نوتیفیکیشن وجود دارد.
این اپ ها به گونه ای طراحی میشوند که بدون اینترنت هم کار کنند. این وظیفه ی Service Worker است که در زمانی که ارتباط با اینترنت قطع است از کش اطلاعات را لود کند.
از آنجا که PWA خود سایت است و مستقیما در موتور جستجوگر گوگل پیدا میشود شانس اینکه کاربرها از آن استفاده کنند بالا میرود. همچنین هزینه ی برنامه نویسی محلی برای انواع سیستم عامل ها از بین میرود.
بسیاری از شرکتها از جمله سامسونگ تلاش می کنند تسلط گوگل و اپل بر بازار اپ را از بین ببرند و از این رو سرمایه گذاری زیادی در این زمینه انجام داده اند. تویتر جدیدترین رویکرد به این سمت است اما آخرین نخواهد بود.
استفاده از تکنیک SSR سرعت لود شدن صفحه را بالا میبرد و حس اپ های محلی را به کاربر القا می کند. از آنجا که صفحه کش میشود جابجایی میان صفحات بسیار سریع است و هر وقت رویدادی باید به اطلاع کاربر برسد دسترسی به سیستم نوتیفیکیشن وجود دارد.
این اپ ها به گونه ای طراحی میشوند که بدون اینترنت هم کار کنند. این وظیفه ی Service Worker است که در زمانی که ارتباط با اینترنت قطع است از کش اطلاعات را لود کند.
از آنجا که PWA خود سایت است و مستقیما در موتور جستجوگر گوگل پیدا میشود شانس اینکه کاربرها از آن استفاده کنند بالا میرود. همچنین هزینه ی برنامه نویسی محلی برای انواع سیستم عامل ها از بین میرود.
بسیاری از شرکتها از جمله سامسونگ تلاش می کنند تسلط گوگل و اپل بر بازار اپ را از بین ببرند و از این رو سرمایه گذاری زیادی در این زمینه انجام داده اند. تویتر جدیدترین رویکرد به این سمت است اما آخرین نخواهد بود.