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

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

تعمل هذه الخدمة كموقع إنترنت أو إضافة بمتصفح الإنترنت حيث تقوم بتفكيك الرابط المختصر ثم اعتراضه وعرض الرابط الهدف للمستخدم. بهذه الطريقة يتم منع تتبع المستخدم واعتراض أي رابط قدر يضر بحاسوبك/هاتفك وكذلك التخلص من الروابط المختصرة التي تعرض الإعلانات.

الخدمة متوفرة على كل من #فيرفكس و #كروم

شكر خاص لـ @MRWNS1 على مشاركته هذه الخدمة.
https://github.com/simonfrey/unshort.link
#go #link #privacy #firefox #chrome
تعلم رست وغو ببضعة ساعات مع مقارنة سريعة مع بايثون وسي بلس بلس

لطالما قرأت عن لغة #رست وعن سرعة أدائها وسهولة الكتابة بها وبأنها موازية بالأداء لـ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
كنا في منشور سابق تحدثنا عن التطبيق PDF Arranger المتخصّص بتعديل ملفات PDF بطريقة سهلة وأنيقة.

اليوم سنتحدث عن تطبيق أكثر عمقاً واحترافية بالتعديل على ملفات PDF.

المحرّر pdfcpu يعمل بنفس طريقة PDF Arranger لكن يختلف عنه بأنه يحتوي على المزيد من الأوامر المفصّلة كاستخراج الصور والخطوط وإضافة المرفقات وحذفها أو أنشاء ملف من الصفر باستعمال ملفات #json والعديد من الأوامر المفيدة جداً بتعديل ملفات #PDF

على عكس PDF Arranger يعمل #pdfcpu من سطر الأوامر أو كـ #مكتبة برمجية بلغة #غو وهو متوفر على #لينكس و #ويندوز و #ماكنتوش

- رابط الموقع:
https://pdfcpu.io/
- رابط المشروع:
https://github.com/pdfcpu/pdfcpu

ملاحظة على الهامش:
العديد من الشركات والبوتات تستعمل هذا المحرر كونه سهل التثبيت (لا يحتاج لأية اعتماديات) وفائق السرعة بالأداء.

#processor #Go #convert #split #editor #محرر #بوت
هل تريد البدء بالبرمجة أو بتعلم تقنية جديدة؟

خدمة roadmap توفر عليك عناء البحث عن المصادر وتساعدك على توفير الوقت والتركيز على ما تحتاجه بالضبط من خلال خرائط تفاعلية جاهزة لأهم التقنيات بعالم البرمجة.

الخدمة مجانية ومفتوحة المصدر لكن المخططات حقوقها محفوظة. مع ذلك يمكن الاستفادة منها كثيراً حتى مع وجود تلك القيود.

- رابط الخدمة:
https://roadmap.sh/
- رابط المشروع:
https://github.com/kamranahmedse/developer-roadmap

#برمجة #تطوير #تلميح #computer_science #roadmap #python #developer #devops #react #frontend #java #backend #go #angular #nodejs #dba #javascript #vue #blockchain #qa #software_architect
احترف بناء الواجهات الخلفية Backend باستخدام لغة غو Go

منهاج متكامل وعملي لبناء واجهة خلفية لبنك صغير باستخدام أشهر التقنيات.
المنهاج مكثّف ويتدرج من الصفر (لمن لا يتقنون البرمجة) حتى الاحتراف وتكاد التقنيات المستعملة به تغطي غالبية الأفكار التي يمكن تنفيذها بالواجهات الخلفية لتطبيقات الوب

المشروع مجاني برخصة MIT وكل فيديوهاته متوفرة على يوتيوب مجاناً

- رابط المشروع:
https://github.com/techschool/simplebank
- رابط الدروس:
https://www.youtube.com/playlist?list=PLy_6D98if3ULEtXtNSY_2qN21VCKgoQAE

#go #غو #cors #backend #api #sql #docker #postgresql #jwt #paseto #aws #grps #session #Redis