سفر کهکشان ، ابوراجا
312 subscribers
25 photos
2 videos
1 file
29 links
گپ های فنی و آموزشی برنامه نویسی

https://abooraja.ir
Download Telegram
کاش دیروز از خدا یه چیز دیگه خواسته بودم! :)
سایت محبوب گیت هاب امکان ساخت رایگان نامحدود مخزن کد خصوصی را فراهم کرد.

@abooraja_ir
مجموعه آموزش ویدئویی فارسی زامارین اندروید به صورت رایگان منتشر شد. از طریق لینک زیر می تونید همه قسمت ها را آنلاین ببینید یا دانلود کنید.
مدرس: ابوالفضل رجب پور

https://abooraja.ir/persian-farsi-xamarin-android-tutorial/

سرفصل ها:
۰- مقدمه ای بر زامارین Xamarin
۱- چرا زامارین مهم است – یک داستان واقعی
۲- آموزش نصب زامارین در ویژوال استودیو – قسمت اول
۲- آموزش نصب زامارین در ویژوال استودیو – قسمت دوم
۳- نصب شبیه ساز جنی موشن Genymotion
۴- ساخت یک برنامه ساده
۵- پلتفرم زامارین
۶- ساختار یک برنامه اندروید
۷- کنترل های طراحی صفحات در اندروید
۸- ساختار پروژه فروشگاه کتاب
۹- ساخت صفحه نمایش جزئیات کتاب
۱۰- متصل کردن دیتا به صفحه نمایش کتاب
۱۱- ساخت یک لیست ویو ساده listview
۱۲- ساخت لیست ویو سفارشی custom listview
۱۳- انتقال دیتا بین اکتیویتی ها
۱۴- ساخت یک وب سرویس rest در asp.net
۱۵- فراخوانی وب سرویس rest در زامارین
۱۶- ذخیره سازی دیتای ساده در زامارین
۱۷- ذخیره سازی دیتا در زامارین با استفاده از sqlite
۱۸- صفحه ثبت نام و سفارش کتاب
۱۹- سبک متریال دیزاین اندروید material design
۲۰- کار با دفترچه تلفن در اندروید
۲۱- ارسال پیامک از طریق کد و دریافت پیام
۲۲- کار با گالری تصویر در اندروید
۲۳- انتشار برنامه اندروید در کافه بازار

#آموزش #فارسی #زامارین #اندروید
@abooraja_ir
بروزرسانی خودکار docker containers با watchtower

اگر از docker برای بسته های نرم افزاری و هاست استفاده می کنید و جزو علاقه مندان DevOps هستید، پس حتما با این نیازمندی برخورد کرده اید که چگونه می شود به طور خودکار container ها را بروزرسانی کرد؟!
خوشبختانه ابزارهایی برای اینکار بوجود آمده است که بسیار آسان و ساده اینکار را انجام می دهند. یکی از بهترین این ابزارها watchtower هست. watchtower خودش یک image ساده هست که فقط باید آن را اجرا کنیم. به همین سادگی.
https://abooraja.ir/docker-container-update-with-watchtower/

#داکر #devops
@abooraja_ir
چند روزه توی اینستاگرام یه بازی مد شده که افراد با پاسخ به چندتا سوال در مورد دوستشون میزان شناختشون رو میسنجن. بازی یه باگ ضایعی داشت که نمیخواستم لو بدم، ولی دیدم چندجا لو دادن گفتم دیگه تابلو شد 😀
https://www.instagram.com/p/ByCxpgSlAfy/

#بازی #اینستاگرام #هک #باگ #grandedesafio
@abooraja_ir
برنامه نویس ها معمولی اند. مثل همه زندگی میکنند. شادی دارند، غم دارند، عاشقی دارند، زندگی دارند. فقط یک عالمِ مجازیِ موازی دارند که گاهی فارغ از همه ی عالمِ واقع در اون زندگی میکنند. واقعی تر از عالم واقع

متن زیر با الگوریتم aes با کلید happyprogrammersday و بلاک سایز 128 بیت رمزنگاری شده است. دیکود کنید و مهربون باشید :)

PEsARp+fnaKzSVgFsjAaeA/lxr5203YvI5J2YkdMffQ7b3qpuurTTwKvaUAh7ezTn/IrrAAJQ0vBgFhJacLXQQ==

#روز_برنامه_نویس_مبارک

@abooraja_ir
کد تخفیف مخفیانه تپسی به مناسبت روز برنامه نویس

دقیقا ساعت ۱۰ شب توئیتر تپسی پیامی رو منتشر کرد که روز برنامه نویس رو تبریک گفته بود. در اون توئیت عکسی پیوست شده بود و مختصر نوشته بود: روز برنامه نویس مبارک!
از اونجایی که بیخوابی به سرم زده بود عکس رو با دقت باز کردم و محتوای داخلش رو نگاه میکردم. با دیدن CURL در کامند دسکتاپ تصویر حدس زدم خبرایی باشه و حدسم درست بود. جلوی کامند curl آدرس api تپسی بود که آدرسش تبریک روز برنامه نویس بود. روالی که در ادامه میگم رو اگر طی میکردید تپسی به شما یک کد تخفیف ۵۰ هزارتومانی میداد. البته الان دیگه دیر شده و کد تخفیف ها تموم شده :)

ولی خب اگه دلتون میخواد چندتا نکته فنی کوچیک یاد بگیرید ادامه مطلب رو بخونید
https://abooraja.ir/tap30-hidden-code-programmers-day/

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

پانوشت: عصبانی بودم جواب بدی به ربات ها در کد دادم. شما خواننده مودب و محترم به خوبی خودتون ببخشید 😀

لینک پست در اینستاگرام
https://www.instagram.com/p/B6x6si8pg4M/

@abooraja_ir
بعضی نیازهای روزمره برنامه نویسی در همه زبان ها همیشه مورد نیاز هستند. مهم ترین اینها توابع و کتابخانه های کار با اعداد و زبان و تبدیل های مختلف اونهاست.
حالا آقای علی ترکی عزیز به همراه چندنفر دیگر یک کتابخانه با کیفیت برای js نوشتند که تقریبا همه این نیازهای روزمره را پوشش میدهد.
نمونه مواردی که این کتابخانه پوشش میدهد:
• تبدیل اعداد به حروف و برعکس (مثلا:‌تبدیل ۳۰۰ به سی صد و برعکس).
• حذف و اضافه کردن کاما به اعداد.
• تبدیل اعداد فارسی به انگلیسی و عربی و عربی به انگلیسی و فارسی.
• تایید و اعتبارسنجی کد ملی.
• دریافت نام استان و شهرستان با کد ملی.
• تایید و اعتبارسنجی شماره عابر بانک.
• دریافت نام بانک توسط شماره عابر بانک.
• تایید و اعتبارسنجی متن فارسی ( به عنوان مثال:‌ درصورتی که متن وارد شده فارسی باشد true برمیگرداند )
• تمیز کردن متن فارسی از حروف عربی و unicode ها.

تمامی مثال ها و اطلاعات تکمیلی رو میتونید توی صفحه گیت هاب پروژه مشاهده کنید.
https://github.com/persian-tools/persian-tools

@abooraja_ir
مدیرعامل گیت هاب، آقای نت فریدمن امروز با درج پستی در وبلاگ شرکت از برداشتن تحریم ایران در گیت هاب خبر داد.
نت فریدمن می گوید که از تحریم های آمریکا مستثنی شده اند و اکنون تمامی خدمات گیت هاب اعم از رایگان و غیررایگان برای ایرانیان دردسترس می باشد.
از تحریم ایران توسط گیت هاب، حدود ۲ سال می گذرد
@abooraja_ir
ابزاری بسیار جالب برای محاسبه حجم نهایی پروژهای جاوا اسکریپتی
در این سایت می توانید آدرس پکیج را بدهید یا حتی می‌توانید فایل package.json را آپلود کنید تا حجم نهایی پروژه شما را بررسی نماید. مزیت این ابزار در این است که شما هزینه اضافه کردن هر بسته جاوااسکریپتی را می توانید محاسبه و بررسی کنید. و اگر حجم بالایی به پروژه اضافه کرد، در صورت لزوم راه های جایگزین را بررسی کنید.
https://bundlephobia.com

@abooraja_ir
نگارش جدید آیکون های bootstrap منتشر شد

با اضافه شدن ۶۰ آیکن جدید به کتابخانه Bootstrap Icons، تعداد کل آیکن ها به 1200 عدد رسید.
Bootstrap Icons v1.3.0
https://icons.getbootstrap.com/

@abooraja_ir
در سال 2018 رایان دال ( خالق nodejs ) یک سخنرانی کرد که در آن به 10 چیزی اشاره کرد که در مورد Node.js اشتباه است و در انتهای ارائه خود Deno را معرفی کرد. Deno در آن زمان صرفاً یک پروژه کوچک بود که رایان مشغول ساختش بود و آن را Node.js نسخه 2 می‌نامید که موجب بهبود و امن‌تر شدن آن می‌شود. پس از سپری شدن سه سال نسخه ۱.۰ به صورت رسمی در سال ۲۰۲۰ منتشر شد.
دنو یک محیط زمان اجرای جدید ( javascript runtime ) برای جاوااسکریپت و تایپ اسکریپت می باشد که مزایایی بیشتر از nodejs دارد و مشکلات قبلی را رفع کرده است.
و اکنون با بررسی آمار گیت هاب متوجه شدیم که deno در سال ۲۰۲۰ بیشترین ستاره را دریافت کرده است. این جایگاه برای ۵ سال پیاپی متعلق به vuejs بوده است.

https://risingstars.js.org/2020/en#section-framework

@abooraja_ir
برنامه نویسی و ناسا ( به بهانه ارسال فضاپیمای مریخ )

شاید خیلی از آدم های جامعه وقتی به مریخ نورد ناسا نگاه میکنند، به کلیت فضاپیما و مریخ و این چیزا فکر میکنند، ولی اکثر ما برنامه نویسا بیشتر تمرکزمون روی اون مانیتورها و نرم افزارهایی هست که این پروژه عظیم رو همراهی میکنند :)

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

فکر کن یه نفر توی تیم حوصله نداشته و یه جای کوچک رو اشتباه نوشته باشه.
چه اتفاقی می افته؟ توی اینجور پروژه ها خیلی خیلی خطرناک هست و خیلی راحت منجر به انفجار میشه.
بوووووم و میلیاردها دلار پول دود میشه و چندسال پروژه عقب میفته.
فکر میکنین شوخیه؟ تا حالا پیش نیومده؟
سال ۱۹۶۲ یه اتفاق خیلی مسخره افتاد. در واقع یه خط کد که مربوط به یه فرمول ریاضی بود اشتباهی از روی مستندات تایپ شده بود.
همین باعث شد که ماهواره Mariner I منفجر بشه و اون زمان ۸۰ میلیون دلار خرج روی دست ناسا بذاره. معادل ۷درصد کل بودجه سالیانه ناسا
این البته تنها مورد از این اتفاقات نیست. آژانس فضایی اروپا و ناسا بعدش هم از این گاف های وحشتناک داشتند که میتونین توی اینترنت ببینید.
https://www.laserfiche.com/ecmblog/whats-worst-software-bug-history/

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

ناسا یک صفحه داره در سایت گیتهاب که معروف ترین سایت کدهای متن باز هست.
https://github.com/nasa

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

و اینجا هم یک راهنما که میگه به عنوان کارمند ناسا اگر میخواین کدتون رو روی گیتهاب ناسا به صورت عمومی منتشر کنید ‌چه روالی داره و چه قوانینی رو باید رعایت کنید.
https://code.nasa.gov/

طبق راهنما، یه قسمت دارن تحت عنوان SRA که مخفف Software Release Authority هست. کار واحد انتشار نرم افزار، بررسی کدها و چک کردن قوانین سازمان و منتشر کردن اون هست.

البته همونطور که میدونید لزوما نرم افزار متن باز به معنی رایگان نیست. اینکه شما روی کد چکارهایی میتونی انجام بدی کاملا به مجوزی بستگی داره که سازنده روی اون گذاشته.
مجوزهای متن باز خیلی متنوع هستند. بعضی هاشون خیلی سخت گیرانه است. مثلا میگه به شرطی حق استفاده داری که اگر کوچکترین تغییری روی نرم افزار دادی، تو هم تغییراتت رو منتشر کنی.
این نوع مجوز باعث میشه که اون نرم افزار اصلی هم خیلی زود آپدیت بشه و رشد کنه.
در مقابل بعضی مجوزها خیلی سهل گیرانه ست. میگه هرجور دلت میخواد ازش استفاده کن و اگر حال کردی روی کد اصلی هم کمک کن بهبودش بدیم.
حتی مجوزهایی داریم که عنوانش دقیقا اینه: " برو هر غلطی ( ... ) میخوای باهاش بکن (... ) "
WTFPL
Do What The F** You Want To Public License

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

خب دیگه سفری به کهکشان برنامه نویسی زدیم با مریخ نورد ناسا :)

@abooraja_ir
آیا میدونید گوگل کروم نسخه ۹۰ رو هم رد کرد؟
اولین نسخه رو سال ۲۰۰۸ منتشر کرد. و ۱۲ سال طول کشیده تا به این نسخه برسه. ولی بازم این این نحوه نسخه گذاری در عالم نرم افزار رکورد محسوب میشه. تقریبا سالی ۸ نسخه major! :)

@abooraja_ir
۴ ساعت قبل nextjs نسخه جدید داد :)
البته از نسخه ۱۰.۱ به ۱۰.۲ . ولی بازم چندتا چیز باحال داشت که گفتم بگم براتون.
اول از همه اینکه مثل نسخه قبلی باز هم performance و کارایی دغدغه مهم تیم بوده. بهبود سرعت build و startup و refresh و خلاصه همه چی!
یه ماژول redirect هم اضافه کرده به تنظیماتش که خیلی پرکاربرد هست. میتونید تنظیم کنید که اگر این شرایط در مورد درخواست برقرار بود به کدوم صفحه هدایت بشه. مثلا اگر IE نسخه پایین بود، بره به صفحه بهینه شده برای این مرورگر. یا حتی اگر فلان کوکی بود و ... خلاصه اینم چیز کاربردی هست. اخیرا ما هم گیرش بودیم.
یه امکان دیگه هم گذاشته که web font ها رو توکار و بهینه میکنه. این باعث میشه که FCP و LCP خیلی بهبود پیدا کنه. اگر اخیرا دغدغه seo داشتید، حتما بهش برخورد کردید.
و دست آخر یه خبر باحال که تاثیرات دیگه ای در آینده داره. اونم اینکه آقای توبیاس کوپرز به تیم نکست وارد شده. کیه؟ نویسنده webpack . وخب معلومه که خبر هیجان انگیزیه واسه عاشقان nextjs :)
https://nextjs.org/blog/next-10-2

@abooraja_ir
Forwarded from کدهک
ویژوال استودیو 2022 به طور کامل از پردازنده های 64 بیتی پشتیبانی میکند و محدودیت حافظه 4 گیگابایتی آن روی devenv.exe برطرف شده است. به این ترتیب امکان باز کردن سولوشن هایی با هزاران پروژه و چند صد هزار فایل ممکن شده است.

این نسخه قرار است از MAUI هم پشتیبانی کند وامکان پیاده سازی اپ های با UI یکسان در انواع پلتفرم ها را فراهم میکند.

پیش بینی میشود نسخه 22 به همراه دات نت 6 در اواخر سال جاری میلادی منتشر شود.
مهمترین نیاز هر تیم نرم افزاری داشتن استانداردی برای کدنویسی هست. توی لینک زیر گوگل برای اکثر زبان های برنامه نویسی معروف یک استاندارد پیشنهادی فراهم کرده. میتونید ازش الگو بگیرید و درصورت نیاز به سلیقه تیم تغییرش بدین. مهمترین نکته اینه که این استاندارد درواقع معیار شما برای ارزیابی کدهای تیم code review هست.
https://google.github.io/styleguide/

@abooraja_ir
snapp_report-abooraja_ir.pdf
3 MB
یه شرکت سرمایه گذاری اومده بر اساس گزارشات مالی اسنپ و یه سری معیارهای دیگه شرکت اسنپ رو ارزش گذاری کرده. این شرکت عدد ۱۶ تا ۲۱ همت ( هزار میلیاد تومان ) رو به عنوان ارزش شرکت اسنپ محاسبه کرده. فارغ از صحت و درستی اطلاعات و ارزش نهایی که در تخصص من نیست، خود مستند و اعداد و نحوه محاسبه برای کسانی که دغدغه کارفرینی و ارزش گذاری دارند جالبه. پیشنهاد میکنم یه نگاهی بهش بندازید

@abooraja_ir
This media is not supported in your browser
VIEW IN TELEGRAM
راه های زیادی برای رسیدن به هدف وجود دارند. اما کوتاه ترین مسیر لزوما سریع ترین مسیر نیست

@abooraja_ir
روز همه برنامه نویس ها مبارک، به جز برنامه نویس های واتساپ!

@abooraja_ir