3/3
مقایسه تکنیکال: Static Linking vs Dynamic Linking
- ویندوز (غالباً Static/خودمحور): برنامهها ترجیح میدن تا حد امکان از کتابخونههای اختصاصی یا Static-Linked استفاده کنن تا Dependencyها رو به حداقل برسونن. نتیجه؟ حجم بالای فایلهای EXE و نصبِ تکراری کتابخونهها (مثل چندین نسخه از VC++ Redistributable).
- لینوکس (غالباً Dynamic/متمرکز): پکیجها به کتابخونههای داینامیک وابسته میشن که فقط یک بار نصب میشن و بین همه برنامهها به اشتراک گذاشته میشن. حجم نهایی سیستم کمتر میشه و آپدیت امنیتی یک کتابخونه، همه برنامههای وابسته رو تحت پوشش قرار میده.
آمار و فکتهای کلیدی:
- توی ویندوز ۱۰، بیش از ۱۵ نسخه مختلف از Visual C++ Redistributable ممکنه نصب باشه که هر کدوم بین ۲۰MB تا ۱۰۰MB فضا اشغال میکنن.
- توی لینوکس، پکیج libc6 (کتابخونه استاندارد سی) فقط یک بار نصب میشه و بیش از ۸۵٪ از پکیجهای موجود در ریپازیتوریهای معتبر بهش وابستهان. حجم این پکیج حدود ۴MB هستش.
- بر اساس مستندات فنی، سیستمهای مدیریت پکیج لینوکس از الگوریتمهای پیشرفته برای Dependency Resolution استفاده میکنن تا ناسازگاری نسخهها رو حذف کنن.
نکته فنی: مکانیزم کش (Cache) پکیج منیجرها در دایرکتوریهای خاصی (مثل /var/lib/apt/lists یا /var/cache/dnf) لیستی از تمام پکیجها و وابستگیهاشون رو نگه میداره. وقتی دستور آپدیت میدی، این کش با ریپازیتوری همگامسازی میشه و Dependencyها روی آخرین نسخهها چک میشن. توی ویندوز، چنین سیستمی به صورت مرکزی وجود نداره و هر برنامه جداگانه چک میکنه آپدیت جدیدی واسه DLLهای خاص خودش هست یا نه.
مسئله Checksum و امنیت:
پکیج منیجرهای لینوکس به صورت پیشفرض از الگوریتمهای هشینگ مثل SHA-256 برای تأیید یکپارچگی پکیجها استفاده میکنن. هر پکیج قبل از نصب، بررسی میشه تا مطمئن شه با نسخه موجود در ریپازیتوری مطابقت داره. توی ویندوز، اگرچه امضای دیجیتال برای فایلهای اجرایی وجود داره، اما هیچ سیستم متمرکزی برای بررسی یکپارچگی DLLهای سیستمی تعریف نشده.
~> @PinkOrca🩷
مقایسه تکنیکال: Static Linking vs Dynamic Linking
- ویندوز (غالباً Static/خودمحور): برنامهها ترجیح میدن تا حد امکان از کتابخونههای اختصاصی یا Static-Linked استفاده کنن تا Dependencyها رو به حداقل برسونن. نتیجه؟ حجم بالای فایلهای EXE و نصبِ تکراری کتابخونهها (مثل چندین نسخه از VC++ Redistributable).
- لینوکس (غالباً Dynamic/متمرکز): پکیجها به کتابخونههای داینامیک وابسته میشن که فقط یک بار نصب میشن و بین همه برنامهها به اشتراک گذاشته میشن. حجم نهایی سیستم کمتر میشه و آپدیت امنیتی یک کتابخونه، همه برنامههای وابسته رو تحت پوشش قرار میده.
آمار و فکتهای کلیدی:
- توی ویندوز ۱۰، بیش از ۱۵ نسخه مختلف از Visual C++ Redistributable ممکنه نصب باشه که هر کدوم بین ۲۰MB تا ۱۰۰MB فضا اشغال میکنن.
- توی لینوکس، پکیج libc6 (کتابخونه استاندارد سی) فقط یک بار نصب میشه و بیش از ۸۵٪ از پکیجهای موجود در ریپازیتوریهای معتبر بهش وابستهان. حجم این پکیج حدود ۴MB هستش.
- بر اساس مستندات فنی، سیستمهای مدیریت پکیج لینوکس از الگوریتمهای پیشرفته برای Dependency Resolution استفاده میکنن تا ناسازگاری نسخهها رو حذف کنن.
نکته فنی: مکانیزم کش (Cache) پکیج منیجرها در دایرکتوریهای خاصی (مثل /var/lib/apt/lists یا /var/cache/dnf) لیستی از تمام پکیجها و وابستگیهاشون رو نگه میداره. وقتی دستور آپدیت میدی، این کش با ریپازیتوری همگامسازی میشه و Dependencyها روی آخرین نسخهها چک میشن. توی ویندوز، چنین سیستمی به صورت مرکزی وجود نداره و هر برنامه جداگانه چک میکنه آپدیت جدیدی واسه DLLهای خاص خودش هست یا نه.
مسئله Checksum و امنیت:
پکیج منیجرهای لینوکس به صورت پیشفرض از الگوریتمهای هشینگ مثل SHA-256 برای تأیید یکپارچگی پکیجها استفاده میکنن. هر پکیج قبل از نصب، بررسی میشه تا مطمئن شه با نسخه موجود در ریپازیتوری مطابقت داره. توی ویندوز، اگرچه امضای دیجیتال برای فایلهای اجرایی وجود داره، اما هیچ سیستم متمرکزی برای بررسی یکپارچگی DLLهای سیستمی تعریف نشده.
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤7
چرا مسیحی نیستم (برتراند راسل).pdf
2.4 MB
~> Why I Am Not a Christian (پیشنهادی)
"چرا من مسیحی نیستم" کتابی هستش که برتراند راسل در سال ۱۹۲۷ نوشته. این کتاب در اصل یک سخنرانی بوده که راسل توی انجمن ملی سکولار لندن ارائه کرده و بعدا تبدیل به کتاب شده.
#متفرقه #کتاب
~> @PinkOrca🩷
"چرا من مسیحی نیستم" کتابی هستش که برتراند راسل در سال ۱۹۲۷ نوشته. این کتاب در اصل یک سخنرانی بوده که راسل توی انجمن ملی سکولار لندن ارائه کرده و بعدا تبدیل به کتاب شده.
راسل توی این کتاب به صورت سیستماتیک دلایلی که باعث شدن مسیحیت رو رد کنه توضیح میده. یکی از مهمترین بخشهای کتاب، نقد برهان علیت هستش که توسط توماس آکویناس مطرح شده بود. راسل میگه که این برهان منطقی نیست چون اگه هر چیزی باید علتی داشته باشه، پس خود خدا هم باید علتی داشته باشه.
توی بخش دیگهای از کتاب، راسل به مسئله رنج و درد در جهان میپردازه. اون میگه چطور ممکنه خدایی که میگن مهربون و قادر مطلق هستش، اجازه بده اینهمه درد و رنج توی دنیا وجود داشته باشه؟
یه نکته جالب اینه که راسل توی این کتاب به تاثیر ترس روی شکلگیری دین اشاره میکنه. اون میگه آدمها از چیزایی که نمیفهمن میترسن و این ترس باعث میشه به دین پناه ببرن.
کتاب با زبان ساده و در عین حال دقیق نوشته شده و تاثیر زیادی روی جنبشهای آتئیستی قرن بیستم گذاشته. جالبه بدونید که این کتاب توی زمان انتشارش خیلی جنجالی شد و حتی باعث شد راسل از تدریس توی کالج City College of New York محروم بشه.
راسل توی این کتاب به مسائل اخلاقی هم میپردازه و میگه که میشه بدون دین هم اخلاقمدار بود. اون معتقد بود که اخلاق مبتنی بر عقل و همدلی انسانی میتونه جایگزین اخلاق دینی بشه.
این کتاب تا امروز به بیش از ۴۰ زبان ترجمه شده و یکی از تاثیرگذارترین آثار در زمینه نقد دین به حساب میاد. نسخه اصلی کتاب حدود ۶۰ صفحه هستش و توی اون راسل با دقت و ظرافت خاصی استدلالهاش رو مطرح میکنه.
#متفرقه #کتاب
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
❤16👎11👍6🤣3
~> Fuzzy Search
قبل از اینکه از جستجوی فازی بگیم، لازمه یکم از منطق فازی بدونیم...
منطق فازی که در سال ۱۹۶۵ توسط پروفسور لطفیزاده معرفی شد، یک رویکرد ریاضی برای مدلسازی عدم قطعیت هستش. برخلاف منطق کلاسیک که فقط صفر و یک رو میشناسه، منطق فازی میتونه مقادیر بین این دو رو هم در نظر بگیره.
یکی از کاربردهای مهم منطق فازی، جستجوی فازی (Fuzzy Search) هستش که به ما اجازه میده حتی با وجود خطاهای تایپی یا املایی، نتایج مرتبط رو پیدا کنیم. این تکنیک از الگوریتمهای مختلفی استفاده میکنه که مهمترینشون عبارتند از:
۱. Levenshtein Distance (Edit Distance):
این الگوریتم تعداد تغییراتی که لازمه تا یک رشته به رشته دیگه تبدیل بشه رو محاسبه میکنه. مثلاً فاصله "سلام" و "سلم" برابر ۱ هستش چون فقط یک حرف حذف شده.
۲. Soundex:
این الگوریتم کلمات رو براساس تلفظشون کدگذاری میکنه. مثلاً "Smith" و "Smythe" کد یکسانی میگیرن چون تلفظ مشابهی دارن. این الگوریتم خیلی توی سیستمهای CRM استفاده میشه.
۳. N-gram:
این تکنیک رشتهها رو به قطعههای n حرفی تقسیم میکنه و شباهتشون رو میسنجه. مثلاً برای کلمه "hello" با n=2 داریم: "he", "el", "ll", "lo"
یک نمونه کاربردی از جستجوی فازی توی Elasticsearch هستش که از تکنیکهای مختلفی مثل Fuzzy Query استفاده میکنه:
شرکتهای بزرگ از ترکیب این الگوریتمها استفاده میکنن. مثلاً اسپاتیفای از الگوریتمهای فازی برای جستجوی موزیک استفاده میکنه که حتی اگه اسم آهنگ رو اشتباه بنویسی، میتونه نتیجه درست رو پیدا کنه.
یکی از چالشهای اصلی جستجوی فازی، تنظیم threshold هستش. اگه خیلی پایین باشه نتایج نامرتبط زیاد میشن و اگه خیلی بالا باشه ممکنه نتایج مفید رو از دست بدیم. معمولاً مقدار ۰.۸ یا ۸۰٪ نقطه شروع خوبی هستش.
برای زبانهای غیرانگلیسی مثل فارسی، باید ملاحظات خاصی در نظر گرفته بشه. مثلاً حروف مشابه مثل "ک" و "گ" یا تشخیص کلمات مرکب. کتابخونههایی مثل hazm برای فارسی این قابلیتها رو فراهم میکنن.
#برنامه_نویسی #علوم_کامپیوتر #نرم_افزار #ریاضی #نوشته
~> @PinkOrca🩷
قبل از اینکه از جستجوی فازی بگیم، لازمه یکم از منطق فازی بدونیم...
منطق فازی که در سال ۱۹۶۵ توسط پروفسور لطفیزاده معرفی شد، یک رویکرد ریاضی برای مدلسازی عدم قطعیت هستش. برخلاف منطق کلاسیک که فقط صفر و یک رو میشناسه، منطق فازی میتونه مقادیر بین این دو رو هم در نظر بگیره.
یکی از کاربردهای مهم منطق فازی، جستجوی فازی (Fuzzy Search) هستش که به ما اجازه میده حتی با وجود خطاهای تایپی یا املایی، نتایج مرتبط رو پیدا کنیم. این تکنیک از الگوریتمهای مختلفی استفاده میکنه که مهمترینشون عبارتند از:
۱. Levenshtein Distance (Edit Distance):
این الگوریتم تعداد تغییراتی که لازمه تا یک رشته به رشته دیگه تبدیل بشه رو محاسبه میکنه. مثلاً فاصله "سلام" و "سلم" برابر ۱ هستش چون فقط یک حرف حذف شده.
def levenshtein(s1, s2):
if len(s1) < len(s2):
return levenshtein(s2, s1)
if len(s2) == 0:
return len(s1)
previous_row = range(len(s2) + 1)
for i, c1 in enumerate(s1):
current_row = [i + 1]
for j, c2 in enumerate(s2):
insertions = previous_row[j + 1] + 1
deletions = current_row[j] + 1
substitutions = previous_row[j] + (c1 != c2)
current_row.append(min(insertions, deletions, substitutions))
previous_row = current_row
return previous_row[-1]
۲. Soundex:
این الگوریتم کلمات رو براساس تلفظشون کدگذاری میکنه. مثلاً "Smith" و "Smythe" کد یکسانی میگیرن چون تلفظ مشابهی دارن. این الگوریتم خیلی توی سیستمهای CRM استفاده میشه.
۳. N-gram:
این تکنیک رشتهها رو به قطعههای n حرفی تقسیم میکنه و شباهتشون رو میسنجه. مثلاً برای کلمه "hello" با n=2 داریم: "he", "el", "ll", "lo"
یک نمونه کاربردی از جستجوی فازی توی Elasticsearch هستش که از تکنیکهای مختلفی مثل Fuzzy Query استفاده میکنه:
{
"query": {
"fuzzy": {
"noscript": {
"value": "تهرن",
"fuzziness": "AUTO"
}
}
}
}شرکتهای بزرگ از ترکیب این الگوریتمها استفاده میکنن. مثلاً اسپاتیفای از الگوریتمهای فازی برای جستجوی موزیک استفاده میکنه که حتی اگه اسم آهنگ رو اشتباه بنویسی، میتونه نتیجه درست رو پیدا کنه.
یکی از چالشهای اصلی جستجوی فازی، تنظیم threshold هستش. اگه خیلی پایین باشه نتایج نامرتبط زیاد میشن و اگه خیلی بالا باشه ممکنه نتایج مفید رو از دست بدیم. معمولاً مقدار ۰.۸ یا ۸۰٪ نقطه شروع خوبی هستش.
برای زبانهای غیرانگلیسی مثل فارسی، باید ملاحظات خاصی در نظر گرفته بشه. مثلاً حروف مشابه مثل "ک" و "گ" یا تشخیص کلمات مرکب. کتابخونههایی مثل hazm برای فارسی این قابلیتها رو فراهم میکنن.
#برنامه_نویسی #علوم_کامپیوتر #نرم_افزار #ریاضی #نوشته
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
❤26👍10🔥3🍾1
This media is not supported in your browser
VIEW IN TELEGRAM
~> عکس رندوم با ویژگیهای دلخواه برای وبدیزاینرها
⚡️ Lorem Picsum یه سرویس CDN برای عکسهای تستی و پلیسهولدر هستش که از عکسهای Unsplash استفاده میکنه. API سادهای داره و میتونید سایز و افکتهای مختلف رو روی عکسها اعمال کنید. سورسکدش روی گیتهاب هستش، با Go نوشته شده و کاملا رایگانه.
🔥 https://picsum.photos
👍 خودم خیلی دوسش دارم به شخصه و استفادش میکنم برای صرفهجویی در زمان...
#معرفی #طراحی_وب #اپن_سورس
~> @PinkOrca🩷
⚡️ Lorem Picsum یه سرویس CDN برای عکسهای تستی و پلیسهولدر هستش که از عکسهای Unsplash استفاده میکنه. API سادهای داره و میتونید سایز و افکتهای مختلف رو روی عکسها اعمال کنید. سورسکدش روی گیتهاب هستش، با Go نوشته شده و کاملا رایگانه.
🔥 https://picsum.photos
👍 خودم خیلی دوسش دارم به شخصه و استفادش میکنم برای صرفهجویی در زمان...
#معرفی #طراحی_وب #اپن_سورس
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
💥 اسلایدر تصویر (HTML, CSS, JS)
🔗 سورس کد
پ.ن:
+ یه navbar ریسپانسیو هم امشب کامیت کردم...
#تکه_کد #طراحی_وب
~> @PinkOrca🩷
🔗 سورس کد
پ.ن:
+ یه navbar ریسپانسیو هم امشب کامیت کردم...
#تکه_کد #طراحی_وب
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9🔥4👍2
This media is not supported in your browser
VIEW IN TELEGRAM
~> TeleSecretary
🥸 به پیشنهاد عرشا این قابلیت پاسخگویی خودکار (به چتهای جدید) که از امکانات تلگرام بیزینس هستش رو با پایتون و کتابخونه telethon نوشتم که هرکسی خواست استفاده کنه.
🩷 این اسکریپت اپنسورسه و برای اطلاعات بیشتر میتونید README رو مطالعه کنید...
https://codeberg.org/PinkOrca/TeleSecretary
#پروژه #اپن_سورس #معرفی
~> @PinkOrca🩷
🥸 به پیشنهاد عرشا این قابلیت پاسخگویی خودکار (به چتهای جدید) که از امکانات تلگرام بیزینس هستش رو با پایتون و کتابخونه telethon نوشتم که هرکسی خواست استفاده کنه.
🩷 این اسکریپت اپنسورسه و برای اطلاعات بیشتر میتونید README رو مطالعه کنید...
https://codeberg.org/PinkOrca/TeleSecretary
#پروژه #اپن_سورس #معرفی
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
1❤13👍3🔥1😁1
~> TempleOS ⛪️
تمپلاواس یک سیستمعامل ۶۴ بیتی هستش که تری دیویس (Terry A. Davis) اون رو به تنهایی توسعه داده. این سیستمعامل از سال ۲۰۰۳ شروع به توسعه شد و تا سال ۲۰۱۳ اسمش LoseThos بود.
😇 این سیستمعامل با زبان برنامهنویسی HolyC نوشته شده که خود تری اون رو ساخته و شباهت زیادی به C داره. کل سیستمعامل حدود ۱۰۰ هزار خط کد داره و همه چیز توش با رزولوشن ۶۴۰x۴۸۰ و ۱۶ رنگ اجرا میشه.
یکی از ویژگیهای جالب TempleOS اینه که هیچ مالتیتسکینگی نداره و همه چیز در یک رینگ 0 (بالاترین سطح دسترسی) اجرا میشه. این باعث میشه که سیستمعامل خیلی سریع باشه ولی امنیت نداشته باشه. تری معتقد بود که این طراحی باعث میشه برنامهنویسها بتونن راحتتر با سختافزار کار کنن.
فایلسیستمِ TempleOS به اسم RedSea شناخته میشه و از FAT32 الهام گرفته شده. این سیستمعامل درایور شبکه نداره و نمیتونه به اینترنت وصل شه. همچنین از حافظه مجازی پشتیبانی نمیکنه و فقط میتونه تا ۸ گیگابایت رم رو مدیریت کنه.
یکی از ابزارهای جالب این سیستمعامل DolDoc هستش که یک سیستم متنی با قابلیت هایپرلینک و نمایش گرافیک درون متن هستش. تری از این ابزار برای نوشتن داکیومنتهای سیستم استفاده میکرد.
TempleOS یک کامپایلر Just-In-Time داره که کد رو مستقیماً به زبان ماشین تبدیل میکنه و این باعث میشه که اجرای برنامهها خیلی سریع باشه. همچنین یک محیط توسعه یکپارچه (IDE) داره که میتونه کد رو در لحظه کامپایل و اجرا کنه.
یکی از ویژگیهای جالب دیگه TempleOS قابلیت نمایش کاراکترهای ASCII به صورت سه بعدی هستش. تری دیویس یک فرمت فایل به اسم "3D Mesh" ساخت که میتونست کاراکترهای ASCII رو به مدلهای سه بعدی تبدیل کنه.
این قابلیت توی بازیهایی که با HolyC نوشته شده بودن استفاده میشد. مثلاً توی بازی "After Egypt" که خود تری ساخته بود، میشد کاراکترهای ASCII رو به صورت مدلهای سه بعدی دید که برای اون زمان و با توجه به محدودیتهای گرافیکی سیستم (۱۶ رنگ)، یک نوآوری جالب به حساب میاومد.
این سیستمعامل تحت لایسنس Public Domain منتشر شده و سورس کدش به صورت کامل در دسترس هستش. با اینکه TempleOS از نظر تکنیکی محدودیتهای زیادی داره، ولی به عنوان یک پروژه که توسط یک نفر نوشته شده خیلی قابل توجه هستش.
🗒 یکم بیشتر اگه در مورد تری دیویس کنجکاوید:
ایشون در سال ۱۹۶۹ به دنیا اومد و یک مهندس نرمافزار بود که توی شرکتهای مختلف از جمله Ticketmaster کار میکرد. اون در اوایل دهه ۹۰ میلادی تشخیص اسکیزوفرنی گرفت و معتقد بود که خدا با اون صحبت میکنه و بهش دستور داده که یک سیستمعامل مقدس بسازه.
🥴 اون TempleOS رو "Third Temple" یا معبد سوم میدونست و اعتقاد داشت که این سیستمعامل یک ابزار الهی برای ارتباط با خداست. رزولوشن ۶۴۰x۴۸۰ و ۱۶ رنگ رو هم به این دلیل انتخاب کرد چون فکر میکرد که خدا این رو خواسته.
💔 تری در سال ۲۰۱۸ در سن ۴۸ سالگی فوت کرد. اون در آخرین سالهای زندگیش شرایط سختی داشت و بیخانمان شده بود. نهایتاً توسط یک قطار در اورگان کشته شد که مشخص نشد خودکشی بوده یا تصادف.
❤️🩹 با وجود مشکلات روانی که داشت، تری یک برنامهنویس فوقالعاده بود. اون تونست یک سیستمعامل کامل رو از صفر و به تنهایی بنویسه که از نظر فنی خیلی پیچیده هستش. کامیونیتی برنامهنویسها هنوز هم به خاطر این دستاورد بهش احترام میذارن.
🔗 TempleOS.org
اگه براتون جالب بود [این ویدیو] هم که دوستمون پیشنهاد کرده تماشا کنید.
#نرم_افزار #علوم_کامپیوتر #سیستم_عامل #بیوگرافی #معرفی #فکت
~> @PinkOrca🩷
تمپلاواس یک سیستمعامل ۶۴ بیتی هستش که تری دیویس (Terry A. Davis) اون رو به تنهایی توسعه داده. این سیستمعامل از سال ۲۰۰۳ شروع به توسعه شد و تا سال ۲۰۱۳ اسمش LoseThos بود.
یکی از ویژگیهای جالب TempleOS اینه که هیچ مالتیتسکینگی نداره و همه چیز در یک رینگ 0 (بالاترین سطح دسترسی) اجرا میشه. این باعث میشه که سیستمعامل خیلی سریع باشه ولی امنیت نداشته باشه. تری معتقد بود که این طراحی باعث میشه برنامهنویسها بتونن راحتتر با سختافزار کار کنن.
فایلسیستمِ TempleOS به اسم RedSea شناخته میشه و از FAT32 الهام گرفته شده. این سیستمعامل درایور شبکه نداره و نمیتونه به اینترنت وصل شه. همچنین از حافظه مجازی پشتیبانی نمیکنه و فقط میتونه تا ۸ گیگابایت رم رو مدیریت کنه.
یکی از ابزارهای جالب این سیستمعامل DolDoc هستش که یک سیستم متنی با قابلیت هایپرلینک و نمایش گرافیک درون متن هستش. تری از این ابزار برای نوشتن داکیومنتهای سیستم استفاده میکرد.
TempleOS یک کامپایلر Just-In-Time داره که کد رو مستقیماً به زبان ماشین تبدیل میکنه و این باعث میشه که اجرای برنامهها خیلی سریع باشه. همچنین یک محیط توسعه یکپارچه (IDE) داره که میتونه کد رو در لحظه کامپایل و اجرا کنه.
یکی از ویژگیهای جالب دیگه TempleOS قابلیت نمایش کاراکترهای ASCII به صورت سه بعدی هستش. تری دیویس یک فرمت فایل به اسم "3D Mesh" ساخت که میتونست کاراکترهای ASCII رو به مدلهای سه بعدی تبدیل کنه.
این قابلیت توی بازیهایی که با HolyC نوشته شده بودن استفاده میشد. مثلاً توی بازی "After Egypt" که خود تری ساخته بود، میشد کاراکترهای ASCII رو به صورت مدلهای سه بعدی دید که برای اون زمان و با توجه به محدودیتهای گرافیکی سیستم (۱۶ رنگ)، یک نوآوری جالب به حساب میاومد.
این سیستمعامل تحت لایسنس Public Domain منتشر شده و سورس کدش به صورت کامل در دسترس هستش. با اینکه TempleOS از نظر تکنیکی محدودیتهای زیادی داره، ولی به عنوان یک پروژه که توسط یک نفر نوشته شده خیلی قابل توجه هستش.
🗒 یکم بیشتر اگه در مورد تری دیویس کنجکاوید:
ایشون در سال ۱۹۶۹ به دنیا اومد و یک مهندس نرمافزار بود که توی شرکتهای مختلف از جمله Ticketmaster کار میکرد. اون در اوایل دهه ۹۰ میلادی تشخیص اسکیزوفرنی گرفت و معتقد بود که خدا با اون صحبت میکنه و بهش دستور داده که یک سیستمعامل مقدس بسازه.
🥴 اون TempleOS رو "Third Temple" یا معبد سوم میدونست و اعتقاد داشت که این سیستمعامل یک ابزار الهی برای ارتباط با خداست. رزولوشن ۶۴۰x۴۸۰ و ۱۶ رنگ رو هم به این دلیل انتخاب کرد چون فکر میکرد که خدا این رو خواسته.
❤️🩹 با وجود مشکلات روانی که داشت، تری یک برنامهنویس فوقالعاده بود. اون تونست یک سیستمعامل کامل رو از صفر و به تنهایی بنویسه که از نظر فنی خیلی پیچیده هستش. کامیونیتی برنامهنویسها هنوز هم به خاطر این دستاورد بهش احترام میذارن.
🔗 TempleOS.org
اگه براتون جالب بود [این ویدیو] هم که دوستمون پیشنهاد کرده تماشا کنید.
#نرم_افزار #علوم_کامپیوتر #سیستم_عامل #بیوگرافی #معرفی #فکت
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥17❤6👍6😢3
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣55👍4😁3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁20❤11👍8👎3🔥1🤣1
چرا دولینگو برای یادگیری زبان مناسب نیست؟
😎 بعد از ۱۰۶ روز استریک و تصمیم برای حذف دولینگو این پست رو میفرستم.
دولینگو با بیش از ۵۰۰ میلیون کاربر، یکی از محبوبترین اپلیکیشنهای یادگیری زبان هستش که از gamification (به شکل خیلی خفنی) برای درگیر کردن کاربرها استفاده میکنه. اما این اپ مشکلات جدیای داره که باعث میشه نتونه ابزار موثری برای یادگیری زبان باشه.
مشکل اصلی دولینگو اینه که بیش از حد روی گیمیفیکیشن تمرکز کرده. سیستم streak، جمعآوری جم، لیدربورد و بقیه المانهای بازیوار باعث میشن کاربر به جای تمرکز روی یادگیری، درگیر حفظ استریک و جمع کردن امتیاز بشه. تحقیقات نشون داده که این نوع پاداشهای بیرونی در درازمدت انگیزه درونی برای یادگیری رو کاهش میدن.
از نظر متدولوژی آموزشی، دولینگو از روشهای قدیمی و ناکارآمد استفاده میکنه. تمرینها عمدتاً شامل ترجمه جملات کوتاه و تکراری هستن که باعث نمیشن کاربر درک درستی از کانتکست و کاربرد واقعی زبان پیدا کنه. مطالعات زبانشناسی نشون دادن که یادگیری موثر زبان نیاز به تعامل واقعی و درک عمیقتر از ساختارهای زبانی داره.
سیستم آموزشی دولینگو خطی نیست و کاربر نمیتونه مسیر یادگیری رو کاستومایز کنه. گرامر به صورت ضمنی و بدون توضیح کافی آموزش داده میشه که برای زبانآموزهای جدی کافی نیست. علاوه بر این، تمرینهای speaking و writing محدود هستن و فیدبکهای سیستم اغلب سطحی و غیردقیق هستن.
طبق تحقیقات موسسه FSI آمریکا، یادگیری یک زبان خارجی به ۶۰۰ تا ۲۲۰۰ ساعت مطالعه جدی نیاز داره، اما ساختار دولینگو طوری طراحی شده که کاربر فقط روزی ۵-۱۰ دقیقه (یا حتی کمتر) تمرین کنه که برای پیشرفت واقعی کافی نیست.
مشکل دیگه اینه که دولینگو از هوش مصنوعی قدیمی استفاده میکنه که نمیتونه انعطافپذیری لازم برای درک گونههای مختلف جوابهای درست رو داشته باشه. این باعث میشه خیلی وقتها جوابهای درست کاربر رو اشتباه در نظر بگیره.
#زبان #دولینگو #نوشته #متفرقه
~> @PinkOrca🩷
دولینگو با بیش از ۵۰۰ میلیون کاربر، یکی از محبوبترین اپلیکیشنهای یادگیری زبان هستش که از gamification (به شکل خیلی خفنی) برای درگیر کردن کاربرها استفاده میکنه. اما این اپ مشکلات جدیای داره که باعث میشه نتونه ابزار موثری برای یادگیری زبان باشه.
مشکل اصلی دولینگو اینه که بیش از حد روی گیمیفیکیشن تمرکز کرده. سیستم streak، جمعآوری جم، لیدربورد و بقیه المانهای بازیوار باعث میشن کاربر به جای تمرکز روی یادگیری، درگیر حفظ استریک و جمع کردن امتیاز بشه. تحقیقات نشون داده که این نوع پاداشهای بیرونی در درازمدت انگیزه درونی برای یادگیری رو کاهش میدن.
از نظر متدولوژی آموزشی، دولینگو از روشهای قدیمی و ناکارآمد استفاده میکنه. تمرینها عمدتاً شامل ترجمه جملات کوتاه و تکراری هستن که باعث نمیشن کاربر درک درستی از کانتکست و کاربرد واقعی زبان پیدا کنه. مطالعات زبانشناسی نشون دادن که یادگیری موثر زبان نیاز به تعامل واقعی و درک عمیقتر از ساختارهای زبانی داره.
سیستم آموزشی دولینگو خطی نیست و کاربر نمیتونه مسیر یادگیری رو کاستومایز کنه. گرامر به صورت ضمنی و بدون توضیح کافی آموزش داده میشه که برای زبانآموزهای جدی کافی نیست. علاوه بر این، تمرینهای speaking و writing محدود هستن و فیدبکهای سیستم اغلب سطحی و غیردقیق هستن.
طبق تحقیقات موسسه FSI آمریکا، یادگیری یک زبان خارجی به ۶۰۰ تا ۲۲۰۰ ساعت مطالعه جدی نیاز داره، اما ساختار دولینگو طوری طراحی شده که کاربر فقط روزی ۵-۱۰ دقیقه (یا حتی کمتر) تمرین کنه که برای پیشرفت واقعی کافی نیست.
مشکل دیگه اینه که دولینگو از هوش مصنوعی قدیمی استفاده میکنه که نمیتونه انعطافپذیری لازم برای درک گونههای مختلف جوابهای درست رو داشته باشه. این باعث میشه خیلی وقتها جوابهای درست کاربر رو اشتباه در نظر بگیره.
#زبان #دولینگو #نوشته #متفرقه
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
👍36❤4👎3😁2
خیلی یهویی چند روز پیش زد به سرم سایتمو آپدیت کنم، همون موقع نوشتمش و امشب هم محتواش رو تنظیم کردم. یه چیز استاتیک، ساده و کاملا وانیلا هستش.
https://pinkorca.net
~
https://codeberg.org/PinkOrca/PinkOrca.net
نظرتون؟
پ.ن:
تصویر تزیینی
#پروژه #حرف_با_شما
~> @PinkOrca🩷
https://pinkorca.net
~
https://codeberg.org/PinkOrca/PinkOrca.net
نظرتون؟
پ.ن:
تصویر تزیینی
#پروژه #حرف_با_شما
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
❤24🔥8👍5👎2😁1
~> YouTubeLM 🖥
☄️ یه ابزار کاربردی برای خلاصه کردن محتوای ویدیوهای یوتیوب به زبان دلخواه (حتی فارسی).
https://youtubelm.com
🔗 مرسی از محمدرضای عزیز واسه توسعه دادنش.
پ.ن:
قبلا معرفی و بعد حذفش کرده بودم بخاطر یه مشکلی، ولی تو آپدیت جدید خوب شده.
#معرفی #ترفند
~> @PinkOrca🩷
☄️ یه ابزار کاربردی برای خلاصه کردن محتوای ویدیوهای یوتیوب به زبان دلخواه (حتی فارسی).
https://youtubelm.com
پ.ن:
قبلا معرفی و بعد حذفش کرده بودم بخاطر یه مشکلی، ولی تو آپدیت جدید خوب شده.
#معرفی #ترفند
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍8❤4
https://pinkorca.net/~/gpl-v3-fa.html
🔗 Source | 🔗 GNU.org
حس میکنم لازم بود!
#گنو #اپن_سورس #نرم_افزار
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24❤12🤣3⚡1🤬1
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31👎3🤣3👍2😁2
داستان جالب پشت پرده خلق ماینکرفت
ماینکرفت، بازیای که امروزه به یکی از بزرگترین پدیدههای دنیای گیم تبدیل شده، داستان شروعی داره که خیلیها باهاش آشنا نیستن. این داستان با یک برنامهنویس سوئدی به نام مارکوس پرسون (با نام مستعار Notch) شروع میشه که تصمیم گرفت تو اوقات فراغتش یه پروژه شخصی رو شروع کنه (مثل خیلی از بقیه خفنترینا که با یه پروژه شخصی استارت شدن).
تو سال ۲۰۰۹، مارکوس پرسون که اون موقع تو شرکت King (سازنده Candy Crush) کار میکرد، شروع کرد به ساخت یه بازی ساده که از بازیهایی مثل Infiniminer و Dwarf Fortress الهام گرفته بود. جالبه بدونید که نسخه اولیه بازی فقط تو ۶ روز ساخته شد! این نسخه اولیه که "Cave Game" نام داشت، خیلی زود به "Minecraft: Order of the Stone" و در نهایت فقط به "Minecraft" تغییر نام داد.
پرسون یه فروم آنلاین به نام TIGSource راه انداخت که از اونجا، آپدیتهای بازی رو با بازیکنها به اشتراک میذاشت و فیدبک میگرفت. نکته جالب اینه که با اینکه بازی هنوز تو مرحله آلفا بود، پرسون تصمیم گرفت اون رو با قیمت ۱۰ یورو بفروشه. کسایی که این نسخه رو میخریدن، به همه آپدیتهای آینده بازی هم دسترسی پیدا میکردن.
این استراتژی فوقالعاده موفق بود و باعث شد تا آخر سال ۲۰۱۰، بیش از ۳۴۰,۰۰۰ نسخه تو مرحله بتا فروخته بشه. درآمد حاصل از این فروش اونقدر زیاد بود که پرسون تونست شرکت خودش، Mojang رو تاسیس کنه.
محبوبیت ماینکرفت خیلی سریع بالا رفت. فقط تو سال ۲۰۱۱، بیش از ۴ میلیون نسخه از بازی فروخته شد. کانالهای یوتیوب و استریمرها نقش مهمی تو این موفقیت داشتن، چون گیمپلی خلاقانه و امکان ساخت چیزای شگفتانگیز رو نشون میدادن.
یکی از نکات خاص درباره توسعه ماینکرفت اینه که پرسون و تیمش خیلی به فیدبک کامیونیتی اهمیت میدادن. به همین خاطر، خیلی از ویژگیهای بازی براساس درخواستهای کاربرها اضافه شدن.
تو سپتامبر ۲۰۱۴، یه اتفاق افتاد که خیلیها رو شوکه کرد: مایکروسافت Mojang و حق امتیاز ماینکرفت رو به مبلغ ۲.۵ میلیارد دلار خرید. این یکی از بزرگترین معاملههای تاریخ صنعت گیم بود.
پرسون بعد از این معامله از Mojang جدا شد و دلیلش رو اینجوری توضیح داد: "این درباره سلامت روانی منه، نه پول. به محض اینکه این معامله انجام بشه، من از برنامهنویسی برای عموم دست میکشم و به ساختن پروژههای کوچیک و جالب ادامه میدم."
امروزه ماینکرفت با بیش از ۲۳۸ میلیون نسخه فروخته شده، پرفروشترین بازی تاریخ هستش. این بازی به پلتفرمهای مختلف مثل موبایل، کنسولها و حتی VR راه پیدا کرده و بازیکنهای فعال ماهانهاش به بیش از ۱۴۰ میلیون نفر میرسه.
جالبه بدونید که ماینکرفت بهخاطر ارزش آموزشیش، تو مدارس سراسر دنیا استفاده میشه و حتی یه نسخه مخصوص آموزشی به نام Minecraft: Education Edition هم داره.
ماینکرفت مسیری رو طی کرد که هیچکس (حتی خود پرسون) هم فکرشو نمیکرد... بدون بودجه تبلیغاتی عظیم و با معرفی توسط خود مردم. انقدر رشد کرد و رو پاپکالچر تاثیر گذاشت که امروزه همه جا میشه اثرش رو دید.
#بازی #بیوگرافی #فکت
~> @PinkOrca🩷
ماینکرفت، بازیای که امروزه به یکی از بزرگترین پدیدههای دنیای گیم تبدیل شده، داستان شروعی داره که خیلیها باهاش آشنا نیستن. این داستان با یک برنامهنویس سوئدی به نام مارکوس پرسون (با نام مستعار Notch) شروع میشه که تصمیم گرفت تو اوقات فراغتش یه پروژه شخصی رو شروع کنه (مثل خیلی از بقیه خفنترینا که با یه پروژه شخصی استارت شدن).
تو سال ۲۰۰۹، مارکوس پرسون که اون موقع تو شرکت King (سازنده Candy Crush) کار میکرد، شروع کرد به ساخت یه بازی ساده که از بازیهایی مثل Infiniminer و Dwarf Fortress الهام گرفته بود. جالبه بدونید که نسخه اولیه بازی فقط تو ۶ روز ساخته شد! این نسخه اولیه که "Cave Game" نام داشت، خیلی زود به "Minecraft: Order of the Stone" و در نهایت فقط به "Minecraft" تغییر نام داد.
پرسون یه فروم آنلاین به نام TIGSource راه انداخت که از اونجا، آپدیتهای بازی رو با بازیکنها به اشتراک میذاشت و فیدبک میگرفت. نکته جالب اینه که با اینکه بازی هنوز تو مرحله آلفا بود، پرسون تصمیم گرفت اون رو با قیمت ۱۰ یورو بفروشه. کسایی که این نسخه رو میخریدن، به همه آپدیتهای آینده بازی هم دسترسی پیدا میکردن.
این استراتژی فوقالعاده موفق بود و باعث شد تا آخر سال ۲۰۱۰، بیش از ۳۴۰,۰۰۰ نسخه تو مرحله بتا فروخته بشه. درآمد حاصل از این فروش اونقدر زیاد بود که پرسون تونست شرکت خودش، Mojang رو تاسیس کنه.
محبوبیت ماینکرفت خیلی سریع بالا رفت. فقط تو سال ۲۰۱۱، بیش از ۴ میلیون نسخه از بازی فروخته شد. کانالهای یوتیوب و استریمرها نقش مهمی تو این موفقیت داشتن، چون گیمپلی خلاقانه و امکان ساخت چیزای شگفتانگیز رو نشون میدادن.
یکی از نکات خاص درباره توسعه ماینکرفت اینه که پرسون و تیمش خیلی به فیدبک کامیونیتی اهمیت میدادن. به همین خاطر، خیلی از ویژگیهای بازی براساس درخواستهای کاربرها اضافه شدن.
تو سپتامبر ۲۰۱۴، یه اتفاق افتاد که خیلیها رو شوکه کرد: مایکروسافت Mojang و حق امتیاز ماینکرفت رو به مبلغ ۲.۵ میلیارد دلار خرید. این یکی از بزرگترین معاملههای تاریخ صنعت گیم بود.
پرسون بعد از این معامله از Mojang جدا شد و دلیلش رو اینجوری توضیح داد: "این درباره سلامت روانی منه، نه پول. به محض اینکه این معامله انجام بشه، من از برنامهنویسی برای عموم دست میکشم و به ساختن پروژههای کوچیک و جالب ادامه میدم."
امروزه ماینکرفت با بیش از ۲۳۸ میلیون نسخه فروخته شده، پرفروشترین بازی تاریخ هستش. این بازی به پلتفرمهای مختلف مثل موبایل، کنسولها و حتی VR راه پیدا کرده و بازیکنهای فعال ماهانهاش به بیش از ۱۴۰ میلیون نفر میرسه.
جالبه بدونید که ماینکرفت بهخاطر ارزش آموزشیش، تو مدارس سراسر دنیا استفاده میشه و حتی یه نسخه مخصوص آموزشی به نام Minecraft: Education Edition هم داره.
ماینکرفت مسیری رو طی کرد که هیچکس (حتی خود پرسون) هم فکرشو نمیکرد... بدون بودجه تبلیغاتی عظیم و با معرفی توسط خود مردم. انقدر رشد کرد و رو پاپکالچر تاثیر گذاشت که امروزه همه جا میشه اثرش رو دید.
#بازی #بیوگرافی #فکت
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24❤17🔥2
Pink Orca | پینک اورکا
داستان جالب پشت پرده خلق ماینکرفت ماینکرفت، بازیای که امروزه به یکی از بزرگترین پدیدههای دنیای گیم تبدیل شده، داستان شروعی داره که خیلیها باهاش آشنا نیستن. این داستان با یک برنامهنویس سوئدی به نام مارکوس پرسون (با نام مستعار Notch) شروع میشه که تصمیم…
Anonymous Poll
49%
ازش خوشم میاد 😁
11%
جالب نیست برام 😒
17%
یه حس معمولی ⌨️
24%
تا حالا بازی نکردم 😱
~> Telethon
تلتون یک کتابخونه پایتونه که برای ساخت تلگرام کلاینت استفاده میشه. این کتابخونه با MTProto 2.0 کار میکنه که پروتکل اختصاصی تلگرامه.
نصبش با pip install telethon انجام میشه و برای شروع کار باید api_id و api_hash رو از سایت my.telegram.org بگیرین. این کلیدها برای احراز هویت کلاینت لازمن.
تلتون از async/await پشتیبانی میکنه و سینتکس کدنویسیش پایتونیکه. برای ذخیره سشنها از StringSession یا SQLiteSession استفاده میکنه که باعث میشه نیاز نباشه هر بار لاگین کنین.
این کتابخونه میتونه ایونتهای مختلف تلگرام رو هندل کنه و به شما اجازه میده با API تلگرام کار کنین. البته باید به محدودیتهای تلگرام هم توجه داشته باشین.
من به عنوان کسی که برنامهنویس پایتون نیست، نسبت به بقیه کتابخونهها بیشتر دوسش دارم و معمولا ازش برای کارهای شخصی استفاده میکنم.
برای مطالعه مستندات و شروع به کار باهاش میتونین به [این صفحه] مراجعه کنین.
#برنامه_نویسی #نوشته #معرفی
~> @PinkOrca🩷
تلتون یک کتابخونه پایتونه که برای ساخت تلگرام کلاینت استفاده میشه. این کتابخونه با MTProto 2.0 کار میکنه که پروتکل اختصاصی تلگرامه.
نصبش با pip install telethon انجام میشه و برای شروع کار باید api_id و api_hash رو از سایت my.telegram.org بگیرین. این کلیدها برای احراز هویت کلاینت لازمن.
تلتون از async/await پشتیبانی میکنه و سینتکس کدنویسیش پایتونیکه. برای ذخیره سشنها از StringSession یا SQLiteSession استفاده میکنه که باعث میشه نیاز نباشه هر بار لاگین کنین.
این کتابخونه میتونه ایونتهای مختلف تلگرام رو هندل کنه و به شما اجازه میده با API تلگرام کار کنین. البته باید به محدودیتهای تلگرام هم توجه داشته باشین.
من به عنوان کسی که برنامهنویس پایتون نیست، نسبت به بقیه کتابخونهها بیشتر دوسش دارم و معمولا ازش برای کارهای شخصی استفاده میکنم.
برای مطالعه مستندات و شروع به کار باهاش میتونین به [این صفحه] مراجعه کنین.
#برنامه_نویسی #نوشته #معرفی
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤5🍾3👎2🤣2🔥1
~> Nim
Nim یک زبان برنامهنویسی سیستمی و کامپایلری هستش که در سال ۲۰۰۸ با نام Nimrod توسط Andreas Rumpf طراحی شد.
سینتکسی شبیه Python داره اما کدهاش به C کامپایل میشن و سرعت اجرای نزدیک به C دارن.
- یه Hello world تو نیم:
کامپایلر Nim از یک رویکرد چند مرحلهای استفاده میکنه. اول کد رو به AST تبدیل میکنه، بعد اون رو به C میبره و در نهایت با استفاده از کامپایلرهای C مثل GCC یا Clang به کد باینری تبدیل میکنه. این زبان علاوه بر C، میتونه به ++C، Objective-C، JavaScript و WebAssembly هم کامپایل بشه.
یه سیستم تایپ قوی و استاتیک داره و از type inference هم پشتیبانی میکنه. این زبان از مفاهیم برنامهنویسی مدرن مثل generics، pattern matching و multi-methods پشتیبانی میکنه. سیستم ماکروی Nim خیلی قدرتمنده و اجازه میده در زمان کامپایل کد رو تغییر بدیم.
از نظر مدیریت حافظه، Nim چند گزینه داره. میتونه از garbage collector استفاده کنه یا با ARC (که در نسخه ۲.۰ اضافه شد) کار کنه. همچنین میشه memory management رو دستی انجام داد. این انعطافپذیری باعث میشه برنامهنویسها بتونن بین پرفورمنس و راحتی یکی رو انتخاب کنن.
پکیجمنیجر رسمی Nim، Nimble نام داره و از فرمت .nimble برای تعریف dependency ها استفاده میکنه. این پکیجمنیجر میتونه پکیجها رو مستقیماً از GitHub و دیگر مخازن git نصب کنه.
کتابخونه استاندارد Nim شامل ماژولهای متنوعی برای کار با فایلها، شبکه، regex، JSON و concurrent programming هستش. همچنین کتابخونههای third-party زیادی برای گرافیک (SDL2)، وب (Jester)، image processing و cryptography وجود دارن.
یکی از ویژگیهای جالب Nim، سیستم Effect system هستش که به کامپایلر اجازه میده side effects توابع رو در زمان کامپایل چک کنه. این سیستم میتونه خطاهای مربوط به I/O یا exception ها رو زودتر پیدا کنه.
🔗 منابع برای یادگیری Nim
#برنامه_نویسی #نرم_افزار #نوشته
~> @PinkOrca🩷
Nim یک زبان برنامهنویسی سیستمی و کامپایلری هستش که در سال ۲۰۰۸ با نام Nimrod توسط Andreas Rumpf طراحی شد.
سینتکسی شبیه Python داره اما کدهاش به C کامپایل میشن و سرعت اجرای نزدیک به C دارن.
- یه Hello world تو نیم:
echo "Hello, World!"کامپایلر Nim از یک رویکرد چند مرحلهای استفاده میکنه. اول کد رو به AST تبدیل میکنه، بعد اون رو به C میبره و در نهایت با استفاده از کامپایلرهای C مثل GCC یا Clang به کد باینری تبدیل میکنه. این زبان علاوه بر C، میتونه به ++C، Objective-C، JavaScript و WebAssembly هم کامپایل بشه.
یه سیستم تایپ قوی و استاتیک داره و از type inference هم پشتیبانی میکنه. این زبان از مفاهیم برنامهنویسی مدرن مثل generics، pattern matching و multi-methods پشتیبانی میکنه. سیستم ماکروی Nim خیلی قدرتمنده و اجازه میده در زمان کامپایل کد رو تغییر بدیم.
از نظر مدیریت حافظه، Nim چند گزینه داره. میتونه از garbage collector استفاده کنه یا با ARC (که در نسخه ۲.۰ اضافه شد) کار کنه. همچنین میشه memory management رو دستی انجام داد. این انعطافپذیری باعث میشه برنامهنویسها بتونن بین پرفورمنس و راحتی یکی رو انتخاب کنن.
پکیجمنیجر رسمی Nim، Nimble نام داره و از فرمت .nimble برای تعریف dependency ها استفاده میکنه. این پکیجمنیجر میتونه پکیجها رو مستقیماً از GitHub و دیگر مخازن git نصب کنه.
کتابخونه استاندارد Nim شامل ماژولهای متنوعی برای کار با فایلها، شبکه، regex، JSON و concurrent programming هستش. همچنین کتابخونههای third-party زیادی برای گرافیک (SDL2)، وب (Jester)، image processing و cryptography وجود دارن.
یکی از ویژگیهای جالب Nim، سیستم Effect system هستش که به کامپایلر اجازه میده side effects توابع رو در زمان کامپایل چک کنه. این سیستم میتونه خطاهای مربوط به I/O یا exception ها رو زودتر پیدا کنه.
🔗 منابع برای یادگیری Nim
#برنامه_نویسی #نرم_افزار #نوشته
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤9🔥2
Nim in Action (Dominik Picheta) @PinkOrca.pdf
3.6 MB
📚 Nim in Action
💢 جامعترین کتاب آموزش زبان برنامهنویسی نیم، نوشتهٔ یکی از توسعهدهندگان اصلی این زبان.
✍️ نویسنده: Dominik Picheta
🔤 زبان: انگلیسی
📖 سال انتشار: 2017
📄 تعداد صفحات: 324
🔗 مشاهده کتاب در آمازون
💥 منابع بیشتر برای Nim:
- مفاهیم پایه و شروع
- یادگیری با مثالهای عملی
- کتابخونههای اصلی و کاربردی
#کتاب #برنامه_نویسی
~> @PinkOrca 🩷
💢 جامعترین کتاب آموزش زبان برنامهنویسی نیم، نوشتهٔ یکی از توسعهدهندگان اصلی این زبان.
✍️ نویسنده: Dominik Picheta
🔤 زبان: انگلیسی
📖 سال انتشار: 2017
📄 تعداد صفحات: 324
🔗 مشاهده کتاب در آمازون
💥 منابع بیشتر برای Nim:
- مفاهیم پایه و شروع
- یادگیری با مثالهای عملی
- کتابخونههای اصلی و کاربردی
#کتاب #برنامه_نویسی
~> @PinkOrca 🩷
1🔥4❤3👍2🤣1
Media is too big
VIEW IN TELEGRAM
~> Animation vs. Coding
💯 خیلی باحال بود پیشنهاد میکنم ببینید.
💥 بهتره از یوتیوب تماشا کنید.
🔗 نسخه ریاضیش
#برنامه_نویسی #انیمیشن
~> @PinkOrca🩷
💯 خیلی باحال بود پیشنهاد میکنم ببینید.
💥 بهتره از یوتیوب تماشا کنید.
🔗 نسخه ریاضیش
#برنامه_نویسی #انیمیشن
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤4🔥3
Media is too big
VIEW IN TELEGRAM
🪓 چرا؟ چون چند تا ویدیو دیدم (تو جاهای مختلفی) که با یه پرامپتی اینا رو مقایسه میکردن و به نظرم واقعی نمیومد با توجه به تجربه خودم... حالا همون پرامپت رو خودمم تست میکنم.
🔧 پرامپت:
Write an HTML program that simulates a ball bouncing inside a spinning hexagon, with gravity and friction affecting its movement, ensuring realistic bounces off the rotating walls.🏆 بهترین عملکرد رو Claude داشت با اختلاف فاحش،
بعدش ChatGPT رو حالت reasoning. البته از هر چند بار درخواست یه بار ممکنه خوب در بیاد، مثلا تو همین ویدیو که تست کردم ChatGPT مثل تستهای قبلی حداقل کارایی هم نداشت و چون شرایط همشون برابر بود فرصت دوباره ندادم اینجا.
هرچند Claude هم تو یه تست قبل از رکورد ویدیو بهتر از این بود! (اینم شانس مایه(
بدترین خروجی هم DeepSeek R1 داشت که چندین دقیقه داشت فکر میکرد و خروجی نمیداد (با خودش کلنجار میرفت) و در نهایت بیخیالش شدم قبل از اینکه شب بشه :)
خروجیها:
chat.deepseek.com -> 0:02
copilot.microsoft.com -> 0:16
chatgpt.com -> 0:27
grok.com -> 0:35
chat.jabirproject.org -> 0:42
gemini.google.com -> 0:54
chat.mistral.ai/chat -> 1:08
این ۲ مورد رو از پرامپت تا اجرا میتونید تو ویدیو ببینید، لحظه اجرا:
ChatGPT (reasoning) -> 2:25
Claude 3.7 sonnet -> 3:48
‼️ مدلهایی که برای همشون استفاده شده، بهترین مدل در دسترسشون بوده، مثلا برای grok که خوب هم نبود زیاد، مدل grok 3 بود (آخرین مدلش) و بقیه هم به همین شکل...
📌 فایلهای خروجی همشون رو تو کامنت اول میفرستم. هیچ فایلی ادیت نشده جز مرتبسازی (Ctrl+Shift+i).
💢 این پست هیچکدوم از مدلهای مطرح رو زیر سوال نمیبره، صرفا مقایسه خروجیهاست به شکل واقعی و با توجه به همچین پرامپت ترند شدهای که خودشم جای کار داره!
#هوش_مصنوعی
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍7