مهووسو جنو Gnu Geeks
3.08K subscribers
418 photos
11 videos
15 files
222 links
أبرز المشاريع و التطبيقات و التلميحات المفيدة لمستخدمي المصادر المفتوحة (الحرة)

لطرح أية تساؤلات تخطر ببالكم بمجال المصادر المفتوحة اشترك بمجموعتنا
https://t.me/gnugeeksgroup
Download Telegram
قائمة بأبرز المكتبات وأطر العمل والأدوات الخاصة بلغة البرمجة #بايثون

1️⃣ قائمة للاستعمال العام:
https://github.com/ml-tooling/best-of-python
2️⃣ قائمة خاصة بتطوير الويب:
https://github.com/ml-tooling/best-of-web-python

#تلميح #python
مشروع مجنون لأرشفة الإنترنت ArchiveBox

قلة
منّا من لا يعرف موقع archive.org المتخصّص بأرشفة الإنترنت.

اليوم ومن داخل بيتك/مكتبك/خادمك تستطيع أرشفة الإنترنت كما تشاء دون الحاجة لأي موقع خارجي.
مشروع ArchiveBox بواجهته البسيطة (ويب أو سطر الأوامر) مستعد لتلقي أي رابط (أو موقع) ليقوم بأرشفته تلقائياً مع كل الملفات المتعلقة بهذا الرابط.

مشروع ArchiveBox ليس عبارة عن نظام لإدارة المستندات DMS أو برنامج لتنزيل صفحات الويب كـ HTTrack بل هو نظام حقيقي للأرشفة يوفر إمكانية العودة بالزمن لأي تاريخ تريده وكذلك تنزيل الوسائط المضمنة كوسائط YouTube أو وسائط المجلات العلمية.

المشروع يستعمل #بايثون ويمكن تثبيته على #لينكس و #ويندوز و #ماكنتوش.

https://github.com/ArchiveBox/ArchiveBox
#internet #archive #backup #timeline
تعلم لغة بايثون من خلال المقتطفات Snippets

يهدف المشروع What the f*ck Python لتعليم لغة بايثون بسرعة هائلة (خلال ساعات) لأي مطور يحمل مبادئ البرمجة بجعبته ويريد البدء بالعمل مباشرة بلغة بايثون.
كذلك يمكن استعمال المشروع كمرجع سريع لكل من كان يستعمل #بايثون ويود العودة لها.

https://github.com/satwikkansal/wtfpython
#python #snippets #documentation #wtf #gotchas #pitfalls #wats
مشكالو Mishkallo إضافة رائعة لليبر أوفيس تقوم بتلوين التشكيل بنقرة زر.

الإضافة مكتوبة بلغة #بايثون لذلك يجب أن تكون بايثون موجودة بنظام التشغيل قبل أن تثبيتها.

من أجل توزيعات #لينكس المشتقة من #أوبونتو يجب التأكد من تثبيت الحزمة التالية قبل تثبيت الإضافة:
libreoffice-script-provider-python

يجدر الإشارة إلى أن هذه الإضافة تعمل فقط مع لايبر #أوفيس بواجهة عربية أو إنكليزية وكذلك جودة التلوين تعتمد على نوع الخط المستخدم (يبدو أن هنالك ثغرة ما قمت بالإبلاغ عنها اليوم)

- رابط الإضافة:
https://extensions.libreoffice.org/en/extensions/show/5805
- رابط المشروع:
https://gitlab.com/mejlad/mishkallo

#تشكيل #vocalization #python #office #Ubuntu #عربية #arabic #vocalize
تستطيع البحث عن حسابات أي شخص بالشبكات الاجتماعية بنقرة زر بواسطة الأداة NExfil دون الحاجة لتسجيل الدخول أو حتى زيارة موقع أي #شبكة #إجتماعية.

تم كتابة #NExfil باستخدام #بايثون وللأسف هي غير موجودة ضمن مدير الحزم #pip لكن تشغيلها سهل ولايحتاج لخبرة كبيرة فقط تحتاج لتوفر بايثون على حاسوبك ثم تثبيت الأداة بالأوامر التالية وبعدها تبحث عن اسم أي شخص كما هو موضح بالفيديو أدناه:

- لتثبيت الأداة:
git clone https://github.com/thewhiteh4t/nexfil.git
cd nexfil
pip3 install -r requirements.txt
- لاستعمال الأداة:
python nexfil.py -u username
- رابط المشروع:
https://github.com/thewhiteh4t/nexfil

#لينكس #linux #OSINT #social #network
تعلم رست وغو ببضعة ساعات مع مقارنة سريعة مع بايثون وسي بلس بلس

لطالما قرأت عن لغة #رست وعن سرعة أدائها وسهولة الكتابة بها وبأنها موازية بالأداء لـC++ وبسهولة بايثون.
الحقيقة أنني لم أنجذب إليها كثيراً لأنه صار عندي مناعة من ثقافة الـ Trend وبالذات من كل شيء جديد، لذلك دائماً أترك التقنيات لفترة حتى تتضح محاسنها من مساؤئها.

منذ بضعة أشهر وبإحدى عطلي الأسبوعية عزمت تعلم لغتين، لغة رست و #غو.

قد تكون طريقة تعلمي غريبة نوعاً ما لكنها ناسبتني لحد بعيد حيث اتبعت المنهجية التالية:
1. بدأت بصفحة ويكيبيديا بكلتا اللغتين للإطلاع على نحوية Syntax كلا اللغتين (ويكي غو - ويكي ر ست)
2. دخلت للموقع الرسمي لكلتا اللغتين وبدأت بكتابة تطبيق بسيط من متصفح الإنترنت (ملعب رست - ملعب غو)
3. بعدما أشبعت ذروة فضولي بدأت بتجهيز الأدوات اللازمة لتبيت اللغتين على حاسوبي وفقاً للتعليمات من الموقعين الرسميين (تعليمات رست - تعليمات غو).
4. بعد الإنتهاء من عملية التثبيت كتبت ثلاثة تطبيقات بلغة C++ ورست وغو (منشورة أدناه) لاختبار أداء اللغات بشكل سطحي جداً

التجربة كانت ممتعة، استطعت تعلم أسياسيات رست وغو خلال ساعتين، شفرة رست وغو كلتاهما سهلتا التعلم بالمقارنة بالـ C++ لكن غو أكثر أناقة وبساطة حتى أنني وجدت أنها أسهل من بايثون من ناحية التنظيم وعدد الأسطر.
بحسب التطبيق الذي جربته باللغات الثلاثة كانت نتيجة سرعة الأداء كالآتي بالترتيب (الزمن بالثانية):
1. Go: 0m2.249s
2. Rust: 0m3.512s
3. C++: 0m8.359s
4. Python: 4m35.354s
النتيجة صادمة أليس كذلك؟
طبعاً من كان ليتوقع أن تكون #سي بلس بلس أبطأ من غو ورست، أما بايثون فكانت بأداء مخز للغاية (أكثر من 4 دقائق)!!!
الحقيقة أن هذا الإختبار بسيط جداً ولا يمكن أن يعوّل عليه بإتخاذ القرارات لكن من خلاله استطعت الحصول على لمحة لقدرات لغة تعلمتها بأقل من يوم. لكن هنالك حقيقة جوهرية وهي أن الأداء المخزي للبايثون حقيقي لأن بايثون لم تصمم أساساً للأداء العالي وبالتالي من الخطأ وضعها بنفس سوية اللغات الثلاث مع ذلك وضعتها كونها من اللغات المحبوبة والتي لها جمهورها.
الحقيقة أن مقارنة الأداء العملية والعلمية تستطيعون الحصول عليها من مؤشر Benchmarks Game الرائع والذي يزودنا بنتيجة واضحة لأداء اللغات الأربع حيث يظهر جلياً أن C++ على القمة بلا ريب لذلك أزودكم بنتيجة الاختبار الحقيقية للأداء (قيمة CPU أقل يعني الأداء الأفضل):
1. #C++
2. Rust vs C++
3. Go vs C++
4. Python vs C++
نأتي لنقطة مهمة واجهتها عندما خضت هذه التجربة وهي أن النظام البيئي Eco System لغو متفوق بأشواط عن رست والسبب واضح وهو أن سهولة نحوية غو زادت من شعبيتها بالرغم من أنه عن طريق رست تستطيعون الوصول لميزات متقدمة يصعب الحصول عليها بواسطة غو. لذلك ستجد أن غو منتشرة بشكل واسع بمجال تطوير الويب والشبكات في حين تستعمل #رست ببرمجة الأنظمة أكثر بالرغم من أن العديد من الشركات تستعملها بتطوير الويب والشبكات.

غو ورست رائعتان وكلتاهما متفوقتان على #بايثون ومرشحتان لأن تكونا بايثون المستقبل لأن كلتاهما توازنان ما بين البساطة والأداء العالي على عكس تعقيد سي بلس بلس وضعف الأداء في بايثون.

قبل الختام يجدر بي الإشارة إلى ثلاثة مواقع مهمة لغو ورست للحصول على أي مكتبة تريدونها بأي اختصاص يخطر ببالكم:
Go Packages
Aِwesome Go
Rust Package Registry

أدناه تجدون التطبيق بأربعة لغات مع طريقة قياس زمن التنفيذ في لينكس 👇

ملاحظة جانبية: أول لغة برمجة تعلمتها هي C++ ودائماً كنت ومازلت أستغرب سبب تقييم المطورين الجدد لها بأنها صعبة، مع ذلك لغة البرمجة مجرد أداة للوصول للهدف النهائي وهو الحصول على التطبيق الرائع الذي سيدر عليكم مليون دولار 😜
لذلك معيار الصعوبة أمر نسبي ومرتبط بعوامل عديدة والتعصب للغة ما عبارة عن سطحية بالغة لحقيقة مغايرة بالكامل لذلك التعصب.

#cpp #c #python #rust #google #go