اصلاح مدل ذهنی از دنیای جاوااسکریپت
دورهی یادگیری مدلهای ذهنی جاوااسکریپت، مجموعه مطالبی هست که توسط Dan Abramov تهیه شده و دید شما رو نسبت به جاوااسکریپت متحول میکنه. مطالعهی این دوره رو به همهی افرادی که با جاوااسکریپت کار میکنن توصیه میکنم. بخصوص برای افرادی که تازه در حال یادگیری این زبان هستن.
این دوره در سایت justjavanoscript.com با قیمت ۴۲ دلار در دسترسه و من هم حدودا ۴ سال پیش که Dan Abramov بصورت رایگان این مطالب رو برای فالورهاش ایمیل کرد، مطالعه کردم و بعدش به فارسی در بلاگم منتشر کردم.
لینک رایگان دورهی فارسی دنیای جاوااسکریپت:
لینک
پ.ن:
آقای Dan Abramov (یکی از سازندگان Redux و Create React App و جز مهندسان نرم افزار بخش React شرکت Meta)
@DevTwitter | <Mohammadreza Berneti/>
دورهی یادگیری مدلهای ذهنی جاوااسکریپت، مجموعه مطالبی هست که توسط Dan Abramov تهیه شده و دید شما رو نسبت به جاوااسکریپت متحول میکنه. مطالعهی این دوره رو به همهی افرادی که با جاوااسکریپت کار میکنن توصیه میکنم. بخصوص برای افرادی که تازه در حال یادگیری این زبان هستن.
این دوره در سایت justjavanoscript.com با قیمت ۴۲ دلار در دسترسه و من هم حدودا ۴ سال پیش که Dan Abramov بصورت رایگان این مطالب رو برای فالورهاش ایمیل کرد، مطالعه کردم و بعدش به فارسی در بلاگم منتشر کردم.
لینک رایگان دورهی فارسی دنیای جاوااسکریپت:
لینک
پ.ن:
آقای Dan Abramov (یکی از سازندگان Redux و Create React App و جز مهندسان نرم افزار بخش React شرکت Meta)
@DevTwitter | <Mohammadreza Berneti/>
👍28🔥7
اگه دنبال موقعیت شغلی به صورت ریموت در خارج از ایران هستین این پست برای شماست.
سلام دوستان ، امیدوارم حالتون خوب باشه.
این روزها که مشغول پروسه رزومه فرستادن و مصاحبه هستم یه سری سایت هارو پیدا کردم که فک میکنم میتونه براتون مفید باشه.
از طریق این سایت ها میتونید به تمام موقعیت های شغلی ریموت دسترسی داشته باشید.
https://clojurejobboard.com
https://dailyremote.com
اگه دنبال موقعیت شغلی ریموت در زمینه بلاکچین و کریپتو هستید این سایت ها برای شماست.
https://cryptojobslist.com/
https://www.cryptojobs.com/
امیدوارم براتون مفید باشه
@DevTwitter | <Sina Abedi/>
سلام دوستان ، امیدوارم حالتون خوب باشه.
این روزها که مشغول پروسه رزومه فرستادن و مصاحبه هستم یه سری سایت هارو پیدا کردم که فک میکنم میتونه براتون مفید باشه.
از طریق این سایت ها میتونید به تمام موقعیت های شغلی ریموت دسترسی داشته باشید.
https://clojurejobboard.com
https://dailyremote.com
اگه دنبال موقعیت شغلی ریموت در زمینه بلاکچین و کریپتو هستید این سایت ها برای شماست.
https://cryptojobslist.com/
https://www.cryptojobs.com/
امیدوارم براتون مفید باشه
@DevTwitter | <Sina Abedi/>
👍19❤4🤣2👎1
کی از Git Rebase استفاده کنیم و کی از Git Merge؟
گاهی توی کار با Git با این سؤال مواجه میشیم که کی بهتره از rebase استفاده کنیم و کی merge؟ این موضوع میتونه روی خوانایی و ساختار تاریخچه پروژه تاثیر زیادی بذاره.
وقتی که میخوایم تاریخچهای تمیز و خطی داشته باشیم، از git rebase استفاده میکنیم. مثلاً فرض کنید در حال کار روی یک شاخهٔ جانبی (feature) هستیم که از شاخهٔ "main" ساخته شده و در این مدت، تغییرات جدیدی در "main" رخ داده است. اگر از rebase استفاده کنیم، تغییرات شاخهٔ "feature" به گونهای دوباره اعمال میشوند که انگار بعد از آخرین تغییرات شاخهٔ "main" انجام شدهاند. این کار کمک میکنه که تاریخچه پروژه به شکلی خطی و ساده باقی بمونه و دیدن اینکه چه تغییراتی و به چه ترتیبی انجام شده، راحتتر باشه.
اما باید با git rebase با احتیاط رفتار کنیم، چون در صورت استفاده نادرست میتونه مشکلات جبرانناپذیری ایجاد کنه. بهویژه، زمانی که چند نفر به طور همزمان روی یک شاخه کار میکنند، استفاده از rebase میتونه منجر به سردرگمی و مشکلات ترکیب (merge conflict) بشه. بنابراین، بهتره زمانی از rebase استفاده کنیم که با نحوهٔ عملکرد دقیق اون آشنایی کافی داشته باشیم.
از طرف دیگه، وقتی که میخوایم دو شاخه رو با هم ترکیب کنیم و دوست داریم که تاریخچهٔ هر دو شاخه و تغییراتشون حفظ بشه، git merge بهترین انتخابه. این روش مخصوصاً زمانی مناسب هست که بخوایم مشارکت چندین توسعهدهنده و تاریخچه کارهای انجام شده روی هر شاخه رو حفظ کنیم. merge به ما این امکان رو میده که به وضوح ببینیم که در چه زمانی دو شاخه با هم ادغام شدهاند و هیچ تغییری از دست نرفته است.
در کل، هر دو دستور rebase و merge کاربردهای خاص خودشون رو دارن و بسته به نیاز پروژه و ساختار تیم باید انتخاب بشن. rebase برای تمیز نگه داشتن تاریخچه و merge برای ترکیب و حفظ شاخههای موازی به کار میره. مهم اینه که هر کدوم رو با دقت و با توجه به نیازهای پروژه استفاده کنیم.
@DevTwitter | <Amirhisein Ahmadi/>
گاهی توی کار با Git با این سؤال مواجه میشیم که کی بهتره از rebase استفاده کنیم و کی merge؟ این موضوع میتونه روی خوانایی و ساختار تاریخچه پروژه تاثیر زیادی بذاره.
وقتی که میخوایم تاریخچهای تمیز و خطی داشته باشیم، از git rebase استفاده میکنیم. مثلاً فرض کنید در حال کار روی یک شاخهٔ جانبی (feature) هستیم که از شاخهٔ "main" ساخته شده و در این مدت، تغییرات جدیدی در "main" رخ داده است. اگر از rebase استفاده کنیم، تغییرات شاخهٔ "feature" به گونهای دوباره اعمال میشوند که انگار بعد از آخرین تغییرات شاخهٔ "main" انجام شدهاند. این کار کمک میکنه که تاریخچه پروژه به شکلی خطی و ساده باقی بمونه و دیدن اینکه چه تغییراتی و به چه ترتیبی انجام شده، راحتتر باشه.
اما باید با git rebase با احتیاط رفتار کنیم، چون در صورت استفاده نادرست میتونه مشکلات جبرانناپذیری ایجاد کنه. بهویژه، زمانی که چند نفر به طور همزمان روی یک شاخه کار میکنند، استفاده از rebase میتونه منجر به سردرگمی و مشکلات ترکیب (merge conflict) بشه. بنابراین، بهتره زمانی از rebase استفاده کنیم که با نحوهٔ عملکرد دقیق اون آشنایی کافی داشته باشیم.
از طرف دیگه، وقتی که میخوایم دو شاخه رو با هم ترکیب کنیم و دوست داریم که تاریخچهٔ هر دو شاخه و تغییراتشون حفظ بشه، git merge بهترین انتخابه. این روش مخصوصاً زمانی مناسب هست که بخوایم مشارکت چندین توسعهدهنده و تاریخچه کارهای انجام شده روی هر شاخه رو حفظ کنیم. merge به ما این امکان رو میده که به وضوح ببینیم که در چه زمانی دو شاخه با هم ادغام شدهاند و هیچ تغییری از دست نرفته است.
در کل، هر دو دستور rebase و merge کاربردهای خاص خودشون رو دارن و بسته به نیاز پروژه و ساختار تیم باید انتخاب بشن. rebase برای تمیز نگه داشتن تاریخچه و merge برای ترکیب و حفظ شاخههای موازی به کار میره. مهم اینه که هر کدوم رو با دقت و با توجه به نیازهای پروژه استفاده کنیم.
@DevTwitter | <Amirhisein Ahmadi/>
👍32👎6
امروز میخوام براتون درباره TCP صحبت کنم، یکی از پروتکلهای کلیدی اینترنت که بهطور روزمره باهاش سروکار داریم. TCP مثل یه پستچی مطمئن عمل میکنه و دادهها رو دقیق و به ترتیب به مقصد میرسونه.
پروتکل کنترل انتقال یا TCP چیه؟
پروتکل کنترل انتقال یا TCP یکی از مهمترین پروتکلهای ارتباطی هست که به دادهها اجازه میده بهصورت امن و مطمئن از یک سیستم به سیستم دیگه منتقل بشن. به خاطر اطمینان بالا، بیشتر اپلیکیشنها مثل وبگردی، ایمیل و پیامرسانها از TCP استفاده میکنن.
چطور ارتباط TCP برقرار میشه؟
برقراری ارتباط TCP یه فرآیند سه مرحلهای به اسم Three-Way Handshake داره:
مرحله اول SYN (Synchronize)
مثل این میمونه که یک طرف دستش رو برای دست دادن دراز کنه.
کلاینت بستهای با فلگ SYN به سرور میفرسته که حاوی شماره ترتیب اولیه (ISN) هست. مثلاً ۱۰۰۰. این یعنی کلاینت میخواد ارتباط برقرار کنه.
مرحله دوم SYN-ACK (Synchronize Acknowledge)
سرور دست رو میگیره و فلگهای SYN و ACK رو تنظیم میکنه. شماره ترتیب کلاینت رو تایید میکنه (۱۰۰۱) و شماره ترتیب خودش رو (مثلاً ۵۰۰۰) میفرسته.
مرحله سوم ACK (Acknowledge)
کلاینت پاسخ میده و فلگ ACK رو تنظیم میکنه. شماره ترتیب سرور رو به ۵۰۰۱ افزایش میده. حالا ارتباط TCP برقرار شده و آماده تبادل دادهها هست.
سوالات متداول:
فلگهای SYN و ACK چی هستن؟
این فلگها به TCP کمک میکنن که ارتباط بین دو سیستم رو مدیریت کنه و مطمئن بشه که هر پیام به درستی دریافت شده.
چرا شماره ترتیبها (ISN) مهم هستن؟
این شمارهها کمک میکنن تا پیامها به ترتیب درست برسن و از گم شدن اطلاعات جلوگیری میکنه. همچنین با تصادفی بودنشون جلوی حملات امنیتی گرفته میشه.
آیا اینترنت به سمت جایگزینی TCP میره؟
در HTTP/3 از پروتکل جدیدی به نام QUIC استفاده میشه که جای TCP رو میگیره، اما هنوز بیشتر وبسایتها از TCP استفاده میکنن، پس فعلاً جایی نمیره!
@DevTwitter | <Firoozeh Daeizadeh/>
پروتکل کنترل انتقال یا TCP چیه؟
پروتکل کنترل انتقال یا TCP یکی از مهمترین پروتکلهای ارتباطی هست که به دادهها اجازه میده بهصورت امن و مطمئن از یک سیستم به سیستم دیگه منتقل بشن. به خاطر اطمینان بالا، بیشتر اپلیکیشنها مثل وبگردی، ایمیل و پیامرسانها از TCP استفاده میکنن.
چطور ارتباط TCP برقرار میشه؟
برقراری ارتباط TCP یه فرآیند سه مرحلهای به اسم Three-Way Handshake داره:
مرحله اول SYN (Synchronize)
مثل این میمونه که یک طرف دستش رو برای دست دادن دراز کنه.
کلاینت بستهای با فلگ SYN به سرور میفرسته که حاوی شماره ترتیب اولیه (ISN) هست. مثلاً ۱۰۰۰. این یعنی کلاینت میخواد ارتباط برقرار کنه.
مرحله دوم SYN-ACK (Synchronize Acknowledge)
سرور دست رو میگیره و فلگهای SYN و ACK رو تنظیم میکنه. شماره ترتیب کلاینت رو تایید میکنه (۱۰۰۱) و شماره ترتیب خودش رو (مثلاً ۵۰۰۰) میفرسته.
مرحله سوم ACK (Acknowledge)
کلاینت پاسخ میده و فلگ ACK رو تنظیم میکنه. شماره ترتیب سرور رو به ۵۰۰۱ افزایش میده. حالا ارتباط TCP برقرار شده و آماده تبادل دادهها هست.
سوالات متداول:
فلگهای SYN و ACK چی هستن؟
این فلگها به TCP کمک میکنن که ارتباط بین دو سیستم رو مدیریت کنه و مطمئن بشه که هر پیام به درستی دریافت شده.
چرا شماره ترتیبها (ISN) مهم هستن؟
این شمارهها کمک میکنن تا پیامها به ترتیب درست برسن و از گم شدن اطلاعات جلوگیری میکنه. همچنین با تصادفی بودنشون جلوی حملات امنیتی گرفته میشه.
آیا اینترنت به سمت جایگزینی TCP میره؟
در HTTP/3 از پروتکل جدیدی به نام QUIC استفاده میشه که جای TCP رو میگیره، اما هنوز بیشتر وبسایتها از TCP استفاده میکنن، پس فعلاً جایی نمیره!
@DevTwitter | <Firoozeh Daeizadeh/>
1👍41❤7👎1
کتاب Web Browser Engineering در مورد روش کار Browser ها و مفاهیم پایه
کمک خوبی است برای درک عمیق مفاهیم
browser.engineering/index.html
@DevTwitter | <MehrdadLinux/>
کمک خوبی است برای درک عمیق مفاهیم
browser.engineering/index.html
@DevTwitter | <MehrdadLinux/>
👍19❤5🔥3
میدونستی یک Lib برای Python هست به اسم Art
که دو ایرانی الاصل به اسم
صدرا صبوری و سپند حقیقی ساختند که نوشته را تبدیل به گرافیک ASCII میکنه
غرب جوانان با استعداد ایران را خوب دستچین کرد و بالا کشید
pypi.org/project/art/
@DevTwitter | <teegra/>
که دو ایرانی الاصل به اسم
صدرا صبوری و سپند حقیقی ساختند که نوشته را تبدیل به گرافیک ASCII میکنه
غرب جوانان با استعداد ایران را خوب دستچین کرد و بالا کشید
pypi.org/project/art/
@DevTwitter | <teegra/>
🤣94👍32❤10🔥7
اگر از لاراول استفاده میکنید و دنبال پکیجی برای آنالیز کلیک کاربران هستید پکیج Pan این امکان رو به صورت لوکال ایجاد میکنه
https://github.com/panphp/pan
معرفی:
https://www.youtube.com/watch?v=hJJNi-Ri_3E
@DevTwitter | <Parsa Kafi/>
https://github.com/panphp/pan
معرفی:
https://www.youtube.com/watch?v=hJJNi-Ri_3E
@DevTwitter | <Parsa Kafi/>
👍22🤣8🔥4❤1
به تازگی یک سری دو قسمتی درباره Spring AI منتشر کردم! اگر به چگونگی ادغام قابلیتهای هوش مصنوعی در Spring علاقهمندید، این مقالات را بررسی کنید:
قسمت اول:
https://hoomanamini.ir/blog/spring-ai-part1
قسمت دوم:
https://hoomanamini.ir/blog/spring-ai-part2
@DevTwitter | <Parsa Kafi/>
قسمت اول:
https://hoomanamini.ir/blog/spring-ai-part1
قسمت دوم:
https://hoomanamini.ir/blog/spring-ai-part2
@DevTwitter | <Parsa Kafi/>
❤7🤣4👍3
چرا تو جاوا اسکریپت وقتی دوتا آبجکت با مقادیر یکسان رو باهم مقایسه میکنیم false برمیگرده؟
بهتره قبل از جواب به دوفهموم اشاره کرد:
1-مقادیر Primitive دادههایی هستند که مستقیماً در یک متغیر ذخیره میشوند. این مقادیر شامل اعداد، بولینها، رشتهها، null و undefined میباشند
مقادیر Reference آبجکتهایی هستند که در حافظه ذخیره میشوند و از طریق یک Reference قابل دسترسی میباشند. این مقادیر شامل آرایهها، آبجکتها و توابع هستند.
خب جالا برسیم به سوال اصلی : وقتی دوتا آبجکت با مقادیر یکسان رو مقایسه میکنیم بهمون false برمیگردونه
علت اصلی این اتفاق این هستش که آبجکت ها Reference تایپ هستن , پس وقتی ما دوتا آبجکت رو باهم مقایسه ظاهر یا مقادیر اونها باهم مقایسه نمیشن , آدرس آنها مقایسه میشن
به عکس زیر توجه کنید , هر دوصورت مقایسه شده
@DevTwitter | <Kamyar Kamali/>
بهتره قبل از جواب به دوفهموم اشاره کرد:
1-مقادیر Primitive دادههایی هستند که مستقیماً در یک متغیر ذخیره میشوند. این مقادیر شامل اعداد، بولینها، رشتهها، null و undefined میباشند
مقادیر Reference آبجکتهایی هستند که در حافظه ذخیره میشوند و از طریق یک Reference قابل دسترسی میباشند. این مقادیر شامل آرایهها، آبجکتها و توابع هستند.
خب جالا برسیم به سوال اصلی : وقتی دوتا آبجکت با مقادیر یکسان رو مقایسه میکنیم بهمون false برمیگردونه
علت اصلی این اتفاق این هستش که آبجکت ها Reference تایپ هستن , پس وقتی ما دوتا آبجکت رو باهم مقایسه ظاهر یا مقادیر اونها باهم مقایسه نمیشن , آدرس آنها مقایسه میشن
به عکس زیر توجه کنید , هر دوصورت مقایسه شده
@DevTwitter | <Kamyar Kamali/>
👍41🤣5❤3👎2
اگر میخواید ماشین لرنینگ، تحلیل داده یا علوم داده رو شروع کنید، از مخزن زیر استفاده کنید! Awesome Public Datasets توی GitHub پر از دادههای رایگان و عمومی هست که به موضوعاتی مثل سلامت، اقتصاد و علوم اجتماعی و ... میپردازه.
https://github.com/awesomedata/awesome-public-datasets
@DevTwitter | <Badass Analyst/>
https://github.com/awesomedata/awesome-public-datasets
@DevTwitter | <Badass Analyst/>
🔥19👍9🤣4
This media is not supported in your browser
VIEW IN TELEGRAM
مایکروسافت یک فریمورک 1bit LLM inference داده به اسم bitnet.cpp. که باهاش میشه انواع مدلها مثلا یک ۱۰۰ میلیارد پارامتری را روی CPU و به صورت لوکال ران کرد. با سرعت 6x بیشتر و تا 82% مصرف انرژی کمتر، همه اینها بدون GPU!
https://github.com/microsoft/BitNet
@DevTwitter | <Mehdi Allahyari/>
https://github.com/microsoft/BitNet
@DevTwitter | <Mehdi Allahyari/>
👍43🔥13🤣3👎2
اگر با VSCode حال میکنین
یه نگاهی به Cursor بکنین
اینکه یه دستیار ai دارین که همه فایل هاتون رو میتونه بررسی کنه و بهتون کمک کنه جذابش کرده
@DevTwitter | <Ali Palvane/>
یه نگاهی به Cursor بکنین
اینکه یه دستیار ai دارین که همه فایل هاتون رو میتونه بررسی کنه و بهتون کمک کنه جذابش کرده
@DevTwitter | <Ali Palvane/>
👎49👍24❤6🤣1
اتفاقی پیش آمد که مجبور شدم پس از چند سال لینوکسام را عوض کنم و دوباره خیلی از configهایی که داشتم را مجدد بازبینی کنم. از اونجایی که استفاده زیادی از cli داشتم رسیدم به جایگزین کردن ls.
بعد از استفاده از برنامههای مختلف، آخر LSDeluxe انتخاب کردم.
github.com/lsd-rs/lsd
یکی از ویژگیهای برجستهی این برنامه، سازگاری کامل آن با سوئیچهای ls است. علاوه بر این، بهخوبی ساختار پوشهها و فایلها را تشخیص میدهد و آیکونهای متناسب با هر کدام را نمایش میدهد. این برنامه قابلیت شخصیسازی گستردهای دارد؛ بهطوری که میتوان با استفاده از فایل پیکربندی (config) تنظیمات موردنظر را برای هر بخش دلخواه اعمال کرد.
نکتهی جذابتر این است که LSDeluxe از Theme پشتیبانی میکند، به این معنا که میتوان برای آن رنگ و آیکونهای اختصاصی تعریف کرد. همچنین، میتوان برای برنامههای خاص مانند git یا هر نرمافزاری که نیاز دارید، پیکربندیهای ویژهای برای نمایش تنظیم کرد.
@DevTwitter | <Vahid Nameni/>
بعد از استفاده از برنامههای مختلف، آخر LSDeluxe انتخاب کردم.
github.com/lsd-rs/lsd
یکی از ویژگیهای برجستهی این برنامه، سازگاری کامل آن با سوئیچهای ls است. علاوه بر این، بهخوبی ساختار پوشهها و فایلها را تشخیص میدهد و آیکونهای متناسب با هر کدام را نمایش میدهد. این برنامه قابلیت شخصیسازی گستردهای دارد؛ بهطوری که میتوان با استفاده از فایل پیکربندی (config) تنظیمات موردنظر را برای هر بخش دلخواه اعمال کرد.
نکتهی جذابتر این است که LSDeluxe از Theme پشتیبانی میکند، به این معنا که میتوان برای آن رنگ و آیکونهای اختصاصی تعریف کرد. همچنین، میتوان برای برنامههای خاص مانند git یا هر نرمافزاری که نیاز دارید، پیکربندیهای ویژهای برای نمایش تنظیم کرد.
@DevTwitter | <Vahid Nameni/>
👍33👎3🤣3
This media is not supported in your browser
VIEW IN TELEGRAM
این ریپو تمام الگوریتم ها را با python پیاده سازی کرده. یک منبع عالی آموزشی برای یادگیری data structures و کلا الگوریتم.
https://github.com/TheAlgorithms/Python
@DevTwitter | <Mehdi Allahyari/>
https://github.com/TheAlgorithms/Python
@DevTwitter | <Mehdi Allahyari/>
🔥33👍8🤣1
توی توسعه دیتابیس، انتخاب نوع دادهها یکی از بخشهای مهم و حساسه. امروز یه چیت شیت و از انواع ستونهای عددی و متنی در Laravel آوردم تا راحتتر تصمیمگیری کنیم که چه نوعِ دادهای، برای داده مدنظرمون کاربردی و مناسبتره
این چیت شیت برای کسانی که مثل من از حافظه کوتاهمدت رنج میبرن (دلیلی که باعث شد اصلا به فکر ساخت این چیت شیت بیوفتم)، میتونه بیشتر از بقیه دوستان مفید باشه
@DevTwitter | <Amir Asgary/>
این چیت شیت برای کسانی که مثل من از حافظه کوتاهمدت رنج میبرن (دلیلی که باعث شد اصلا به فکر ساخت این چیت شیت بیوفتم)، میتونه بیشتر از بقیه دوستان مفید باشه
@DevTwitter | <Amir Asgary/>
❤52👍7🤣4
طلایی ترین لیست وبلاگها برنامه نویسان شرکتهای بزرگ دنیا مثل Google و . . .
در این لیست افرادی که تجربه کار کردن در شرکتهای بزرگ دارند اسم و لینکشون آورده شده
نفراول :
برنامه نویس شرکت TripAdvisor
هم مقالات فنی و هم مهارت نرم رو پوشش میده
https://dandreamsofcoding.com/
نفر دوم :
خالق الگوریتمی که در تمامی سیستم های recommender در شرکت بزرگ ازش استفاده میشه
https://lemire.me/blog/
نفر سوم :
از ایشون مگه بالاتر داریم ؟ CEO شرکت Stack overflow
https://www.joelonsoftware.com/
نفر چهارم :
مهندس نرمافزار گوگل و خالق چند تا از بزرگترین پروژههای Open Source جهان
https://latedev.wordpress.com/
نفر پنجم :
یک از تاثیر گذاران محبوبیت Linux
https://www.linux.org/forums/
نفر ششم :
برنامه نویس Google و نوسینده چند کتاب مشهور در دنیا
https://www.jeremykun.com/
نفر هفتم :
خالق Viaweb نوسینده بزرگ در حیطه برنامه نویسی
https://paulgraham.com/articles.html
نفر هقتم :
متخصص و Director شرکت Huawei
https://www.yegor256.com/
نفر هشتم :
یک متخصص به تمام معنا
https://prog21.dadgum.com/
نفر نهم :
نوسینده کتاب Clean Code
https://blog.cleancoder.com/
نفرم دهم :
مهندس گوگل
https://stevehanov.ca/blog/
نفرم یازدهم :
مهندس شرکت Uber
https://blog.pragmaticengineer.com/
@DevTwitter | <Soheib Kiani/>
در این لیست افرادی که تجربه کار کردن در شرکتهای بزرگ دارند اسم و لینکشون آورده شده
نفراول :
برنامه نویس شرکت TripAdvisor
هم مقالات فنی و هم مهارت نرم رو پوشش میده
https://dandreamsofcoding.com/
نفر دوم :
خالق الگوریتمی که در تمامی سیستم های recommender در شرکت بزرگ ازش استفاده میشه
https://lemire.me/blog/
نفر سوم :
از ایشون مگه بالاتر داریم ؟ CEO شرکت Stack overflow
https://www.joelonsoftware.com/
نفر چهارم :
مهندس نرمافزار گوگل و خالق چند تا از بزرگترین پروژههای Open Source جهان
https://latedev.wordpress.com/
نفر پنجم :
یک از تاثیر گذاران محبوبیت Linux
https://www.linux.org/forums/
نفر ششم :
برنامه نویس Google و نوسینده چند کتاب مشهور در دنیا
https://www.jeremykun.com/
نفر هفتم :
خالق Viaweb نوسینده بزرگ در حیطه برنامه نویسی
https://paulgraham.com/articles.html
نفر هقتم :
متخصص و Director شرکت Huawei
https://www.yegor256.com/
نفر هشتم :
یک متخصص به تمام معنا
https://prog21.dadgum.com/
نفر نهم :
نوسینده کتاب Clean Code
https://blog.cleancoder.com/
نفرم دهم :
مهندس گوگل
https://stevehanov.ca/blog/
نفرم یازدهم :
مهندس شرکت Uber
https://blog.pragmaticengineer.com/
@DevTwitter | <Soheib Kiani/>
❤26👍17🔥5
امروز ی مقاله جالبی درباره پترن API Composition میخوندم که میاد چندین سرویس بک اند رو در یک API مونولیثیک ادغام میکنه و این باعث بهبود دسترسی به داده، مدیریت پذیری و انعطاف پذیری کلاینت فراهم می کند.
در حالت سنتی کلاینت میاد چندین سرویس رو به طور مستقل صدا میزنه که این باعث ایجاد تاخیر و نیاز به مدیریت خطا در کلاینت... میشه و مشکلات خاص خودش رو داره.
پترن API Composition وقتی نیازه که می خواهید داده های مختلف رو از سرویس های مختلف رو جمع کنید و با ترکیب API ها به یک Endpoint واحد چالش رو حل کنید.
از مزیت های این پترن:
افزایش قابلیت کشف و ثبات قابلیتها
جداسازی تولیدکنندگان و مصرفکنندگان داده
هماهنگسازی متمرکز
توسعه سریع و استفاده مجدد از قابلیتها
@DevTwitter | <Mohammad Abdorrahmani/>
در حالت سنتی کلاینت میاد چندین سرویس رو به طور مستقل صدا میزنه که این باعث ایجاد تاخیر و نیاز به مدیریت خطا در کلاینت... میشه و مشکلات خاص خودش رو داره.
پترن API Composition وقتی نیازه که می خواهید داده های مختلف رو از سرویس های مختلف رو جمع کنید و با ترکیب API ها به یک Endpoint واحد چالش رو حل کنید.
از مزیت های این پترن:
افزایش قابلیت کشف و ثبات قابلیتها
جداسازی تولیدکنندگان و مصرفکنندگان داده
هماهنگسازی متمرکز
توسعه سریع و استفاده مجدد از قابلیتها
@DevTwitter | <Mohammad Abdorrahmani/>
👍22🔥3❤1
یه سایت پیدا کردم واسه یادگیری مقدماتی لینوکس، چقد شیوا و قشنگ توضیح داده.
ببینم چقدش میتونم بخونم
Linuxlearning.ir
@DevTwitter | <Poriya/>
ببینم چقدش میتونم بخونم
Linuxlearning.ir
@DevTwitter | <Poriya/>
👍46👎13❤2