#code_time
✅ در کد بالا چه اتفاقی صورت گرفته؟ (عنوان مناسب با توضیحات کامنت کنید)
https://go.dev/play/p/Fd7hi5tpAIN
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅ در کد بالا چه اتفاقی صورت گرفته؟ (عنوان مناسب با توضیحات کامنت کنید)
https://go.dev/play/p/Fd7hi5tpAIN
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍2🤔2🕊2
✅ سایت stackoverflow بصورت آفلاین (۷۰ گیگ)
https://download.kiwix.org/zim/stack_exchange/stackoverflow.com_en_all_2022-05.zim
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
https://download.kiwix.org/zim/stack_exchange/stackoverflow.com_en_all_2022-05.zim
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍4🕊2
چند روزی هست با کمک برخی از دوستان تصمیم گرفتم یک کتاب اپن سورس آنلاین در خصوص زبان گو به فارسی راه اندازی کنیم و در این کتاب به طور عمیق از پایه تا پیشرفته به تمامی مفاهیم زبان گو بپردازیم.
این کتاب در اول راه خودش هست و سعی داریم خیلی سریع تمامی بخش هایش را آماده کنیم تا کسانیکه قصد دارد زبان گو را یادبگیرند و یا اینکه استک خود را به زبان گو تغییر دهند به راحتی زبان گو را یادبگیرند.
هدف کلی ما افزایش جامعه گوفرها هستش و شما می توانید با مشارکت در این کتاب به هدف کمک کنید.
https://book.gofarsi.ir/
جهت مشارکت می توانید به مخزن پروژه مراجعه فرمایید:
https://github.com/GoFarsi/book
#جادی_میرمیرانی
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
این کتاب در اول راه خودش هست و سعی داریم خیلی سریع تمامی بخش هایش را آماده کنیم تا کسانیکه قصد دارد زبان گو را یادبگیرند و یا اینکه استک خود را به زبان گو تغییر دهند به راحتی زبان گو را یادبگیرند.
هدف کلی ما افزایش جامعه گوفرها هستش و شما می توانید با مشارکت در این کتاب به هدف کمک کنید.
https://book.gofarsi.ir/
جهت مشارکت می توانید به مخزن پروژه مراجعه فرمایید:
https://github.com/GoFarsi/book
#جادی_میرمیرانی
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍16🔥9❤4🕊2
Forwarded from جمهوری کدرز میم
نسخه ی جدید Rust منتشر شد.
نکته ی جالب این ریلیز اینه که همون اول کار از بانو مهسا امینی گفته و از ایرانیان و اعتراضات حمایت کرده.
https://blog.rust-lang.org/2022/11/03/Rust-1.65.0.html
@codersmeme
نکته ی جالب این ریلیز اینه که همون اول کار از بانو مهسا امینی گفته و از ایرانیان و اعتراضات حمایت کرده.
https://blog.rust-lang.org/2022/11/03/Rust-1.65.0.html
@codersmeme
❤30🌚2👍1
✅ ابزار gvm مدیریت آسان کامپایلر زبان گو در لینوکس
با استفاده از این ابزار می توانید خیلی ساده نسخه زبان گو خود را upgrade, downgrade و یا حتی نصب کنید.
ویژگی ها :
- دانلود و نصب سریع و آسان
- ارتقا زبان گو در صورت وجود نسخه جدید
- بازگشت به نسخه قبلی در صورت استفاده از downgrade به نسبت ورژن فعلی
- نصب, ارتقا یا downgrade به ورژن خاصی
- گرفتن لیست نسخه های موجود کامپایلر گو
- گرفتن لیست لینک های تغییرات نسخه ها
- امکان بکاپ گیری در محلی مشخص از کامپایلر دانلود شده
- انتخاب خودکار mirror های مختلف جهت دانلود کامپایلر (برای بحث تحریم)
☑️ https://github.com/GoFarsi/gvm
🔰 https://github.com/GoFarsi/gvm/releases
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
با استفاده از این ابزار می توانید خیلی ساده نسخه زبان گو خود را upgrade, downgrade و یا حتی نصب کنید.
ویژگی ها :
- دانلود و نصب سریع و آسان
- ارتقا زبان گو در صورت وجود نسخه جدید
- بازگشت به نسخه قبلی در صورت استفاده از downgrade به نسبت ورژن فعلی
- نصب, ارتقا یا downgrade به ورژن خاصی
- گرفتن لیست نسخه های موجود کامپایلر گو
- گرفتن لیست لینک های تغییرات نسخه ها
- امکان بکاپ گیری در محلی مشخص از کامپایلر دانلود شده
- انتخاب خودکار mirror های مختلف جهت دانلود کامپایلر (برای بحث تحریم)
☑️ https://github.com/GoFarsi/gvm
🔰 https://github.com/GoFarsi/gvm/releases
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍8🕊2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
ابزار hyperfine یک ابزار مفید جهت بنچمارک برنامه های بیلد شده
https://github.com/sharkdp/hyperfine
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
https://github.com/sharkdp/hyperfine
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍6🕊2
Forwarded from Gopher Academy (Javad)
چند روزی هست با کمک برخی از دوستان تصمیم گرفتم یک کتاب اپن سورس آنلاین در خصوص زبان گو به فارسی راه اندازی کنیم و در این کتاب به طور عمیق از پایه تا پیشرفته به تمامی مفاهیم زبان گو بپردازیم.
این کتاب در اول راه خودش هست و سعی داریم خیلی سریع تمامی بخش هایش را آماده کنیم تا کسانیکه قصد دارد زبان گو را یادبگیرند و یا اینکه استک خود را به زبان گو تغییر دهند به راحتی زبان گو را یادبگیرند.
هدف کلی ما افزایش جامعه گوفرها هستش و شما می توانید با مشارکت در این کتاب به هدف کمک کنید.
https://book.gofarsi.ir/
جهت مشارکت می توانید به مخزن پروژه مراجعه فرمایید:
https://github.com/GoFarsi/book
#جادی_میرمیرانی
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
این کتاب در اول راه خودش هست و سعی داریم خیلی سریع تمامی بخش هایش را آماده کنیم تا کسانیکه قصد دارد زبان گو را یادبگیرند و یا اینکه استک خود را به زبان گو تغییر دهند به راحتی زبان گو را یادبگیرند.
هدف کلی ما افزایش جامعه گوفرها هستش و شما می توانید با مشارکت در این کتاب به هدف کمک کنید.
https://book.gofarsi.ir/
جهت مشارکت می توانید به مخزن پروژه مراجعه فرمایید:
https://github.com/GoFarsi/book
#جادی_میرمیرانی
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍11❤8🕊3
📚 فصل اول کتاب زبان برنامه نویسی گو فارسی تمام شد
مفتخریم فصل اول کتاب را تمام کردیم و در کنار این فصل ما یکسری امکانات دیگری به کتاب اضافه کردیم تا در هر شرایطی به کتاب دسترسی داشته باشید.
🚀 ویژگی های جدید :
- اپلیکیشن آفلاین و آنلاین برای انواع پلت فرم های دسکتاپ و موبایل
- ایمیج داکر برای اندازی کانتینر کتاب برای دسترسی آفلاین
- سرورهای مختلف برای دسترسی کتاب
- تکمیل فصل اول
توجه : فصل دوم هم اکنون شروع شده و هنوزم دیر نشده برای اینکه به جمع مشارکت کنندگان بپیوندید.
- https://book.gofarsi.ir
- https://book.ir1.gofarsi.ir
- https://ipfs-book.gofarsi.ir
- https://book.m1.gofarsi.ir
- https://book.m2.gofarsi.ir
مخزن کتاب : https://github.com/GoFarsi/book
لینک مشارکت : https://github.com/GoFarsi/book/blob/main/COUNTRIBUTING.md
#go #golang
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
مفتخریم فصل اول کتاب را تمام کردیم و در کنار این فصل ما یکسری امکانات دیگری به کتاب اضافه کردیم تا در هر شرایطی به کتاب دسترسی داشته باشید.
🚀 ویژگی های جدید :
- اپلیکیشن آفلاین و آنلاین برای انواع پلت فرم های دسکتاپ و موبایل
- ایمیج داکر برای اندازی کانتینر کتاب برای دسترسی آفلاین
- سرورهای مختلف برای دسترسی کتاب
- تکمیل فصل اول
توجه : فصل دوم هم اکنون شروع شده و هنوزم دیر نشده برای اینکه به جمع مشارکت کنندگان بپیوندید.
- https://book.gofarsi.ir
- https://book.ir1.gofarsi.ir
- https://ipfs-book.gofarsi.ir
- https://book.m1.gofarsi.ir
- https://book.m2.gofarsi.ir
مخزن کتاب : https://github.com/GoFarsi/book
لینک مشارکت : https://github.com/GoFarsi/book/blob/main/COUNTRIBUTING.md
#go #golang
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🕊11👍3🍾3⚡1
🥳 Go 1.19.4 and 1.18.9 are released!
🔏 Security: Includes security fixes for net/http (CVE-2022-41717, CVE-2022-41720) and os (CVE-2022-41720).
📦 Download: go.dev/dl/#go1.19.4
#golang
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔏 Security: Includes security fixes for net/http (CVE-2022-41717, CVE-2022-41720) and os (CVE-2022-41720).
📦 Download: go.dev/dl/#go1.19.4
#golang
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
go.dev
All releases - The Go Programming Language
⚡5❤1👍1🕊1🍾1
🚀 GRPC over unix socket Protocol with usecase
Unix sockets, or Unix Domain Sockets, allow bidirectional data exchange between processes running on the same machine. In order to transmit data between processes, the file system provides a reliable and efficient mechanism. The kernel is the only component involved in communication between processes. The processes communicate by reading and writing to the same socket file, which is managed by the kernel. Kernels handle communication details, such as synchronization, buffering, and error handling, and ensure that data is delivered reliably and correctly.
https://github.com/Ja7ad/grpc-unix-socket
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Unix sockets, or Unix Domain Sockets, allow bidirectional data exchange between processes running on the same machine. In order to transmit data between processes, the file system provides a reliable and efficient mechanism. The kernel is the only component involved in communication between processes. The processes communicate by reading and writing to the same socket file, which is managed by the kernel. Kernels handle communication details, such as synchronization, buffering, and error handling, and ensure that data is delivered reliably and correctly.
https://github.com/Ja7ad/grpc-unix-socket
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
GitHub
GitHub - Ja7ad/grpc-unix-socket: GRPC over unix socket Protocol
GRPC over unix socket Protocol. Contribute to Ja7ad/grpc-unix-socket development by creating an account on GitHub.
👍3🕊1
👍12🍾2🕊1
🎊 Go 1.20 Release Candidate 1 is released!
🏃♂️ Run it in dev! Run it in prod! File bugs! go.dev/issue/new
📣 Draft Release Note: https://tip.golang.org/doc/go1.20
📦 Download: go.dev/dl/#go1.20rc1
#golang
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🏃♂️ Run it in dev! Run it in prod! File bugs! go.dev/issue/new
📣 Draft Release Note: https://tip.golang.org/doc/go1.20
📦 Download: go.dev/dl/#go1.20rc1
#golang
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
⚡4🕊2❤1👍1
✅ Go 1.20 new main features:
1. slice -> array conversion
2. unsafe.{String, StringData, SliceData} functions
3. PGO https://github.com/golang/go/issues/55022
4. Arena https://github.com/golang/go/issues/51317
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
1. slice -> array conversion
2. unsafe.{String, StringData, SliceData} functions
3. PGO https://github.com/golang/go/issues/55022
4. Arena https://github.com/golang/go/issues/51317
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍3🕊2⚡1
مقاله جالبی راجع به تعریف senior بودن از کسی که نزدیک به 100 مهندس ارشد را مدیریت کرده است (تیاگو گیسی) و انتظاراتی که از مهندسان ارشد تیم میره.
linkedin.com/pulse/being-senior-engineer-thiago-ghisi
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
linkedin.com/pulse/being-senior-engineer-thiago-ghisi
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
👍2⚡1🕊1💯1
❎25 𝐆𝐨𝐥𝐝𝐞𝐧 𝐑𝐮𝐥𝐞𝐬 𝐭𝐨 𝐚𝐧𝐬𝐰𝐞𝐫 𝐢𝐧 𝐚 𝐒𝐲𝐬𝐭𝐞𝐦 𝐃𝐞𝐬𝐢𝐠𝐧 𝐈𝐧𝐭𝐞𝐫𝐯𝐢𝐞𝐰❎
1. If we are dealing with a read-heavy system, it's good to consider using a Cache.
2. If we need low latency in the system, it's good to consider using a Cache & CDN.
3. If we are dealing with a write-heavy system, it's good to use a Message Queue for Async processing
4. If we need a system to be ACID complaint, we should go for RDBMS or SQL Database
5. If data is unstructured & doesn't require ACID properties, we should go for NO-SQL Database
6. If the system has complex data in the form of videos, images, files etc, we should go for Blob/Object storage
7. If the system requires complex pre-computation like a news feed, we should use a Message Queue & Cache
8. If the system requires searching data in high volume, we should consider using a search index, tries or a search engine like Elasticsearch
9. If the system requires to Scale SQL Database, we should consider using Database Sharding
10. If the system requires High Availability, Performance, & Throughput, we should consider using a Load Balancer
11. If the system requires faster data delivery globally, reliability, high availability, & performance, we should consider using a CDN
12. If the system has data with nodes, edges, and relationships like friend lists, & road connections, we should consider using a Graph Database
13. If the system needs scaling of various components like servers, databases, etc, we should consider using Horizontal Scaling
14. If the system requires high-performing database queries, we should use Database Indexes
15. If the system requires bulk job processing, we should consider using Batch Processing & Message Queues
16. If the system requires reducing server load and preventing DOS attacks, we should use a Rate Limiter
17. If the system has microservices, we should consider using an API Gateway (Authentication, SSL Termination, Routing etc)
18. If the system has a single point of failure, we should implement Redundancy in that component
19. If the system needs to be fault-tolerant, & durable, we should implement Data Replication (creating multiple copies of data on different servers)
20. If the system needs user-to-user communication (bi-directional) in a fast way, we should use Websockets
21. If the system needs the ability to detect failures in a distributed system, we should implement a Heartbeat
22. If the system needs to ensure data integrity, we should use Checksum Algorithm
23. If the system needs to transfer data between various servers in a decentralized way, we should go for the Gossip Protocol
24. If the system needs to scale servers with add/removal of nodes efficiently, with no hotspots, we should implement Consistent Hashing
25. If the system needs anything to deal with a location like maps, nearby resources, we should consider using Quadtree, Geohash, etc
If you like my posts please follow me Dinesh Varyani
#systemdesign
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
1. If we are dealing with a read-heavy system, it's good to consider using a Cache.
2. If we need low latency in the system, it's good to consider using a Cache & CDN.
3. If we are dealing with a write-heavy system, it's good to use a Message Queue for Async processing
4. If we need a system to be ACID complaint, we should go for RDBMS or SQL Database
5. If data is unstructured & doesn't require ACID properties, we should go for NO-SQL Database
6. If the system has complex data in the form of videos, images, files etc, we should go for Blob/Object storage
7. If the system requires complex pre-computation like a news feed, we should use a Message Queue & Cache
8. If the system requires searching data in high volume, we should consider using a search index, tries or a search engine like Elasticsearch
9. If the system requires to Scale SQL Database, we should consider using Database Sharding
10. If the system requires High Availability, Performance, & Throughput, we should consider using a Load Balancer
11. If the system requires faster data delivery globally, reliability, high availability, & performance, we should consider using a CDN
12. If the system has data with nodes, edges, and relationships like friend lists, & road connections, we should consider using a Graph Database
13. If the system needs scaling of various components like servers, databases, etc, we should consider using Horizontal Scaling
14. If the system requires high-performing database queries, we should use Database Indexes
15. If the system requires bulk job processing, we should consider using Batch Processing & Message Queues
16. If the system requires reducing server load and preventing DOS attacks, we should use a Rate Limiter
17. If the system has microservices, we should consider using an API Gateway (Authentication, SSL Termination, Routing etc)
18. If the system has a single point of failure, we should implement Redundancy in that component
19. If the system needs to be fault-tolerant, & durable, we should implement Data Replication (creating multiple copies of data on different servers)
20. If the system needs user-to-user communication (bi-directional) in a fast way, we should use Websockets
21. If the system needs the ability to detect failures in a distributed system, we should implement a Heartbeat
22. If the system needs to ensure data integrity, we should use Checksum Algorithm
23. If the system needs to transfer data between various servers in a decentralized way, we should go for the Gossip Protocol
24. If the system needs to scale servers with add/removal of nodes efficiently, with no hotspots, we should implement Consistent Hashing
25. If the system needs anything to deal with a location like maps, nearby resources, we should consider using Quadtree, Geohash, etc
If you like my posts please follow me Dinesh Varyani
#systemdesign
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❤4👍4⚡2💯1