Gopher Academy
3.34K subscribers
920 photos
40 videos
280 files
2K links
🕸 Gopher Academy

🔷interview golang
https://github.com/mrbardia72/Go-Interview-Questions-And-Answers

حمایت مالی:
https://www.coffeete.ir/mrbardia72

ادمین:
@mrbardia72
Download Telegram
A list of APIs from Iran
لیست API های ارائه شده توسط سایت‌های ایرانی

#api #iran #farsi #persian #list #curated

https://github.com/Hameds/APIs-made-in-Iran


🕊 @gopher_academy
🍾2👍1🕊1
پروژه شبکه بلاکچین Pactus

پروژه‌ای که بیش از دو سال از شروعش میگذره. چندین بار در کلیت پروژه تغییرات داده شد تا به یک استحکام نسبی برسد. در حال حاضر شبکه آزمایشی پروژه درحال اجراست. این شبکه خیلی تا حالا به ما کمک کرده. چندین مشکل را تو شبکه آزمایشی تونستیم پیدا کنیم و رفع و رجوع‌شون کنیم.

مسیر پروژه خیلی همواره نبوده. هنوز خیلی کار و مشکل هست، اما در یک جمع‌بندی کلی، میشه گفت که پروژه به یک ثبات اولیه رسیده. در حال حاضر ۲۰۰ ولیدیتور در شبکه هستند و تخمین خودمون چیزی در حدود ۲۵ تا ۵۰ کامپیوتر هم در شبکه بهم متصل هستند. انتظار داریم بتونیم به ۱۰۰۰ ولیدیتور و ۲۰۰ کامپیوتر برسیم.

اما Maintainer و توسعه دهنده اصلی این پروژه آقای مصطفی صداقت جو (@mos_joo) می باشد که اهل مالزی است و ۲ سال است فوکوس کرده روی این پروژه.

اکنون این پروژه localnet, testnet دارد که داخل testnet حدودا ۲۰۰ ولیدتور فعال دارد که دارند staking می کنند برروی شبکه و اما شبکه mainnet در حال تکمیل شدن است و در Q3 امسال استارت می شود.

من اینجا دوست داشتم دوستانِ علاقمند را دعوت کنم که در روند توسعه پروژه به ما کمک کنند. خصوصا اگر بتونیم از تجربیات دوستان در پروژه بهره ببریم و نواقص پروژه را رفع و کیفیت پروژه را ارتقا بدهیم.

اگر علاقه مند به برنامه نویسی حوزه بلاکچین هستید پروژه پکتوس یک شروع خوب برای یادگیری برنامه نویس بلاکچین هست.

برنامه نویسی بلاکچین مثل کوه یخ می ماند:
- بخش روی سطح آب می توانیم به قراردادهای هوشمند و کارهای روتین با شبکه دانست.
- بخش زیر آب برنامه نویسی شبکه بلاکچین و node و کلیات خود شبکه است (بخش پردرآمد این روزا).

نکته آخر و خوب شما می توانید با مشارکت خود در توسعه این پروژه به پیشرفت پروژه و افزایش دانش خود کمک کنید و ما یکسری مزایا برای پیوستن به تیم توسعه دهنده در نظر گرفتیم:

۱. دریافت bounty برای انجام issue هایی که لیبل bounty دارند.
۲. ورکشاپ های رایگان آموزش کلیات برنامه نویسی بلاکچین (یادگیری عمیق عناوین)
۳. پیوستن به تیم core developer در صورت صلاح دید.
۴. تقویت رزومه شما در زمینه بلاکچین
۵. پرداخت ریالی bounty ها برای مشارکت کنندگان داخل کشور
و...

لینک ها

- صفحه خانگی: https://pactus.org/
- آموزش عناوین کلی پروژه: https://pactus.org/learn/
- نقشه راه: https://pactus.org/about/roadmap/
- اکسپلورر: https://pactusscan.com
- گیتهاب: https://github.com/pactus-project
- مخزن پروژه: https://github.com/pactus-project/pactus
- نحوه مشارکت: https://github.com/pactus-project/pactus/blob/main/CONTRIBUTING.md
- دیسکورد پکتوس: https://discord.gg/H5vZkNnXCu
- کانال تلگرام پکتوس: https://t.me/pactusblockchain


🕊 @gopher_academy
🔥72💊2👍1🕊1
🔵Initializing Large Static Maps in Go
🟢
https://www.dolthub.com/blog/2023-06-16-static-map-initialization-in-go/

🔵math/rand/v2 - a new API for math/rand and a first v2 for std
🟢
https://github.com/golang/go/discussions/60751

🔵A POSIX-compliant AWK interpreter written in Go, with CSV support
🟢
https://github.com/benhoyt/goawk

🔵Select, put and delete data from JSON, TOML, YAML, XML and CSV files
🟢
https://github.com/TomWright/dasel

🔴Golang Weekly
🔴Issue #465 — June 20, 2023

🕊
@gopher_academy
1👍1🕊1
Gopher Academy pinned « پروژه شبکه بلاکچین Pactus پروژه‌ای که بیش از دو سال از شروعش میگذره. چندین بار در کلیت پروژه تغییرات داده شد تا به یک استحکام نسبی برسد. در حال حاضر شبکه آزمایشی پروژه درحال اجراست. این شبکه خیلی تا حالا به ما کمک کرده. چندین مشکل را تو شبکه آزمایشی تونستیم…»
🔵Russ Cox

🟢 https://github.com/rsc
🔴 https://research.swtch.com/

🕊 @gopher_academy
🤔5👍3🔥1🕊1🤣1
🔵interfacebloat

🔻Interface bloat (anti-pattern, also called fat interface) is when an interface incorporates too many operations on some data.

🔻A linter that checks length of interface.

🔻The bigger the interface, the weaker the abstraction. (C) Go Proverbs

🟢Install
go install github.com/sashamelentyev/interfacebloat

🟢Examples
interfacebloat ./...

🔴https://github.com/sashamelentyev/interfacebloat


🕊 @gopher_academy
👍2🍾1
🎉 Go 1.21 Release Candidate 2 is released!

🏖 Run it in dev! Run it in prod! File bugs! https://go.dev/issue/new

📣 Announcement: https://groups.google.com/g/golang-announce/c/REcCdQj1taA

⬇️ Download: https://go.dev/dl/#go1.21rc2


🕊 @gopher_academy
🗿4👍1
William_Denniss_Kubernetes_for_Developers_MEAP_v14_Manning_Publications.pdf
10.2 MB
Kubernetes for Developers (MEAP v14)

Author(s): William Denniss
Publisher: Manning Publications, Year: 2023

Description:
Kubernetes for Developers is a hands-on guide to taking your first steps into Kubernetes using the powerful Google Kubernetes Engine service.

Kubernetes for Developers is a clear and practical beginner’s guide that shows you just how easy, flexible, and cost-effective it can be to make the switch to Kubernetes deployment even for small to medium-sized applications.

Kubernetes for Developers is a hands-on guide to taking your first steps into Kubernetes using the powerful Google Kubernetes Engine service. It lays out a map for taking an application, containerizing it, and then deploying it onto Kubernetes.


🕊 @gopher_academy
🤔2🍌2🗿1
🔵Unexpected downsides of UUID keys in PostgreSQL - CYBERTEC

🔴https://www.cybertec-postgresql.com/en/unexpected-downsides-of-uuid-keys-in-postgresql/


🕊 @gopher_academy
👍1🐳1🍾1

🕊 @gopher_academy
🤣13
🎁 (AirDrop) 80 PAC-coin received in mainnet for join in testnet validators now

We are thrilled to announce the airdrop 🪂 program of (https://pactus.org/). Here's how to participate:

Step 1:
Join Pactus Discord server (https://discord.gg/H5vZkNnXCu).

Step 2:
Follow Pactus Twitter account (https://twitter.com/PactusChain), like and retweet the latest announcement.
Then, fill out the form below with your Twitter account ID to receive 10 PAC-coin on the Mainnet launch.
This helps us spread the word about Pactus and our upcoming launch.

Step 3:
Follow Pactus Instagram page (https://www.instagram.com/pactus.blockchain/), like and comment on the latest post.
Then, fill out the form below with your Instagram account ID to receive 10 PAC-coin on the Mainnet launch.
This helps us spread the word about Pactus and our upcoming launch.

Step 4:
Join the Testnet as a validator to receive 80 PAC-coin on the Mainnet launch :

Download (https://pactus.org/download) the latest version of Pactus Blockchain.
Install and run your node and join the Testnet-1.
Find your Validator address and fill it in the form below
Keep your node running until Mainnet launch to receive 80 PAC-coin on Mainnet launch.
Additionally, you can convert every 1000 Testnet PAC to 1 PAC on the Mainnet launch.

The airdrop will continue until 500 validators have been registered.

By joining the Testnet, you help us test the blockchain in a testing environment and prepare for the Mainnet launch.
Thank you for your support of Pactus. Together we can build a future for blockchain technology and decentralized networks.

Pactus Airdrop Form:
https://docs.google.com/forms/d/e/1FAIpQLSfJ-uiNQtGZdqdApwOCU9oF_O2qAVVa2P2EJtLJvKHxvjQhpQ/viewform


🕊 @gopher_academy
👎6🤔31🔥1🕊1🤣1
Media is too big
VIEW IN TELEGRAM
آموزش درخت Merkle

در این آموزش مهندس مصطفی صداقت جو به بحث آشنایی با درخت Merkle میپردازد و این درخت پرکاربرد در حوزه بلاکچین و حوزه های دیگر در حال استفاده است.

و از همه مهمتر می توانید فرق درخت Merkle در بیت کوین و اتریوم و هچنین پکتوس آشنا شوید.

🔗 لینک ویدئو در یوتیوب: https://www.youtube.com/watch?v=tXlRkAYmJcI

🔗 شنیدن پادکست در اسپاتیفای: https://open.spotify.com/show/6aQdgKiOF5tuzI7mpijlfj

🔗 شنیدن پادکست در گوگل پادکست: https://podcasts.google.com/feed/aHR0cHM6Ly9hbmNob3IuZm0vcy9kZGY3OWRiNC9wb2RjYXN0L3Jzcw

🔗 شنیدن پادکست در کست باکس: https://castbox.fm/va/5381928

🔗 آدرس پروژه: https://pactus.org



🕊 @gopher_academy
👍10👎1🕊1
How did we get to HTTP/3

🕊 @gopher_academy
👍6
🔵what is a webhook?

🔹 1. Short polling
After sending the payment request to the PSP, the payment service keeps asking the PSP about the payment status. After several rounds, the PSP finally returns with the status.

Short polling has two drawbacks:
1) Constant polling of the status requires resources from the payment service.
2) The External service communicates directly with the payment service, creating security vulnerabilities. 

🔹 2. Webhook
We can register a webhook with the external service. It means: call me back at a certain URL when you have updates on the request. When the PSP has completed the processing, it will invoke the HTTP request to update the payment status.


🕊 @gopher_academy
👍7🔥1
نتیجه ی تحقیق سالانه ی stackoverflow با شرکت ۹۰ هزار برنامه نویس
اونایی که برای خودم جالب بود براتون خلاصه ش میکنم:

۱) ۸۴ درصد برنامه نویسان تحصیلات دانشگاهی مرتبط دارن.

۲) استک اور فلو و داکیومنتیتشن رسمی ۲ منبع مهم یادگیری برنامه نویسی هستن...

‏۳) جاوااسکریپت محبوب ترین زبان برنامه نویسیه. پایتون امسال سوم شده :))

۴) یودمی با ۶۳٪ درصد اولین پلتفرم ویدیویی یادگیری برنامه نویسیه.

۵) ۳۳٪ برنامه نویسا فول استک دولوپرن

۶) آمریکا با ۲۱٪ بیشترین تعداد برنامه نویس ها رو داره.

‏۷) پستگرس با ۴۵٪ کاربری محبوب ترین دیتابیس در حال حاضره

۸) نودجی اس با ۴۲٪ محبوب ترین فریم ورکه.

۹) و vscode با ۷۳٪ محبوب ترین IDE

۱۰) ابزارهای غیر همزمان مثل جیرا و اسک... جیرا با ۵۳٪ بالاترین میزان استفاده رو داره.

۱۱) ابزارهای همزمان هم به ترتیب مایکروسافت تیم، اسلک، زوم و دیسکورد بالاترین میزان استفاده رو دارن. ولی اکثرا گفتن که دیسکورد رو ترجیح میدن.

۱۲)کوپایلت با ۵۴٪ محبوب ترین ابزار AI برنامه نویسیه

https://survey.stackoverflow.co/2023/

#DevTwitter | <Fermesk/>

🕊 @gopher_academy
👍9🔥2🍾2🐳1
8 key oop concepts

🕊 @gopher_academy
👍8
1687326492325.pdf
347 KB
Comprehensive guide on Go best practices

🕊 @gopher_academy
👍61🔥1🍾1
The programmer's Life...

🕊 @gopher_academy
👍11🤣8🍾3💊1
#بدرد

رودمپ برای برنامه نویسی در Web3

قبل از شروع یه مطلب رو باید بگم که شفاف سازی بشه.
ما دو نوع برنامه نویس بلاکچین داریم:

1. Dapp developer
این نوع توسعه دهنده ها اپلیکشن هایی که دارن رو روی یه بلاکچین ران میکنن تا بقیه از اون استفاده کنن
‏و اکثر برنامه نویس هایی که در این حوضه فعال هستن dapp developer هستن.

2. Core developer
همونطور که از اسمش معلومه این دسته از توسعه دهنده ها هسته ی بلاکچین رو توسعه میدن، یعنی بلاکچین هایی مثل اتریوم و بیت کوین و ... رو توسعه میدن و مشخصا کار این دسته خیلی سخت تر از dapp developer ها هست.
(رودمپِ این پست برای dapp developer ها هست)


1. فاندامنتال بلاکچین
برای شروع، ما نیاز به شناخت فاندامتال بلاکچین و اینکه چطور کار میکنه داریم. این موضوع توی برنامه نویسی کمک خیلی زیادی به ما میکنه و دلیلش هم اینه که ما برای
پیاده سازی اپلیکیشن به یه سری کانسپت ها نیاز داریم.

2. بلاکچین اتریوم
هرچقدر اطلاعات ما در مورد بلاکچین اتریوم بیشتر باشه کار ما راحت تر میشه.
از اونجایی که اکثر بلاکچین های معروف EVM Compatible هستن ما میتونیم کدهایی که روی اتریوم اجرا کردیم رو روی اونها هم اجرا کنیم.

3. سالیدیتی
زبان سالیدیتی یه زبان سطح بالا و شئ‌گرا هست که شباهت زیادی به جاوااسکریپت و سی پلاس پلاس داره و ما از اون برای نوشتن قرارداد هوشمند استفاده میکنیم.

4. جاوااسکریپت
شما برای تست کردن قرارداد هوشمندتون نیاز به جاوااسکریپت دارین، البته با سالیدیتی هم میتونین تست بنویسید

‏5. ری‌اکت
ری‌اکت یه کتابخونه جاوااسکریپت هست که شما برای شروع به کار باید حداقل مباحث پایه اون رو بدونید.
(برای بازارکاری که در حال‌حاضر هست شما نیاز به دونستن جاوااسکریپت و ری‌اکت دارید اما در گذشته تایتل شغلی smart contract developer هم داشتیم ولی با پیشرفت برنامه نویس ها توی این حوضه کسانی که فقط smart contract بلد بودن از بازارکار کنار زده شدن)

6. هارد هَت - Hardhat
برای توسعه دادن ما به ابزارهایی مثل Hardhat نیاز داریم. Hardhat یه فریمورک برای توسعه فول‌استک برای اتریوم هست.

7. کتابخانه ethers.js یا web3.js
این کتابخونه ها برای وصل کردن اسمارت کانترکت به فرانت‌اند استفاده میشن که شما اگر فقط یکی از اونها رو بلد باشید کارتون راه میوفته.

8. تمرین
یه چیزی که باید در هر زمینه ای در نظر داشته باشیم اینه که بدون تمرین به جایی نمیرسیم!یعنی شما هرچقدر هم که داکیومنت بخونی ولی تمرین نداشته باشی انگار هیچ کاری نکردی.
پس تمرین یکی از مهم ترین اصل های موفقیت در همه ی زمینه ها هست.

9. بروز بودن
سعی کنید پیگیر اخبار و تکنولوژی های جدید این حوضه باشید تا همراه با تکنولوژی حرکت کنید.

#DevTwitter | <Soheilprs.eth/>

🕊 @gopher_academy
👍9

🕊 @gopher_academy
👍18🤣14
Cpu vs gpu vs tpu

🕊 @gopher_academy
👍5🕊21🤔1🍾1💊1