اینجور مواقع شما دیگه نمیخواید یه کامیت جدید بزنید و دلتون میخواد که همین تغییر کوچیک رو روی کامیت قبلیتون بزنید
git commit –amend
هر تغییری که دادید رو روی کامیت قبلیتون ثبت کنید
git commit --amend -m “this fixes the previous oopsies”
اطلاعات بیشتر :
https://smartlogic.io/blog/git-commit-amend/
#trick
#git
Please open Telegram to view this post
VIEW IN TELEGRAM
▪️وقتی از چتبات ChatGPT استفاده میکنید، یادتون باشه علاوه بر برق، این هوش مصنوعی آب هم مصرف میکنه. مثلاً نوشتن یه متن ۱۰۰ کلمهای میتونه تا سه بطری آب نیملیتری آب مصرف کنه.
▪️طبق تحقیقاتی که دانشگاه کالیفرنیا ریورساید انجام داده و واشنگتن پست منتشر کرده، استفاده از هوش مصنوعی هزینههای زیادی داره، از جمله مصرف آب.
▪️میزان مصرف آب به محل مراکز داده بستگی داره. مثلاً در تگزاس، تولید یه ایمیل ۱۰۰ کلمهای حدود ۲۳۵ میلیلیتر آب مصرف میکنه، ولی این عدد در واشنگتن به ۱۴۰۸ میلیلیتر میرسه، یعنی تقریباً سه بطری آب!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Pishro App
بچه ها تو #لاراول ۱۱.۲۳ متد findOrFail() به Eloquent Collectionاضافه شده
‼️ با این متدِ جدید که اضافه شده میتونید به راحتی روی کالکشن هایی که از دیتابیس دارید برای جستجوی مدل خاصی عملیات انجام بدین
نمونه های زیر رو ببینید:
همونطور که میبینید اگر هم نتیجه ای یافت نکنه، یه اکسپشن برمیگردونه
#laravel
👾 @pishroapp
نمونه های زیر رو ببینید:
$users = User::get();
// [User(id: 1), User(id: 2)]
$users->findOrFail(1);
// User
$user->findOrFail([]);
// []
$user->findOrFail([1, 2]);
// [User, User]
$user->findOrFail(3);
// ModelNotFoundException: 'No query results for model [User] 3'
$user->findOrFail([1, 2, 3]);
// ModelNotFoundException: 'No query results for model [User] 3'
همونطور که میبینید اگر هم نتیجه ای یافت نکنه، یه اکسپشن برمیگردونه
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4 2
سلام بچه ها
اگر #وردپرس کار هستید و دنبال کار هستید
یه موقعیت شعلی برای وردپرس توی تهران، سمت توحید
یکی از دوستان من هست اگه مایل بودین رزومه بفرستید
کار حضوری هست، تمام وقت
و حقوق توافقی
سایتشون هم یه فروشگاه فروش محصولات بهداشتی هست
دوستان حقوق تو رنج ۲۵ تا ۳۰ هست
تعطیلی ۲ روز اخر هفته
ساعت کاری از ۹ تا ۶
میتونید به آی دی زیر پیام بدین
@Shoaib_rastin
#موقعیت_شغلی
👾 @pishroapp
اگر #وردپرس کار هستید و دنبال کار هستید
یه موقعیت شعلی برای وردپرس توی تهران، سمت توحید
یکی از دوستان من هست اگه مایل بودین رزومه بفرستید
کار حضوری هست، تمام وقت
و حقوق توافقی
سایتشون هم یه فروشگاه فروش محصولات بهداشتی هست
دوستان حقوق تو رنج ۲۵ تا ۳۰ هست
تعطیلی ۲ روز اخر هفته
ساعت کاری از ۹ تا ۶
میتونید به آی دی زیر پیام بدین
@Shoaib_rastin
#موقعیت_شغلی
Please open Telegram to view this post
VIEW IN TELEGRAM
Pishro App
بچه ها تو #لاراول ۱۱.۲۳ متد findOrFail() به Eloquent Collectionاضافه شده ‼️ با این متدِ جدید که اضافه شده میتونید به راحتی روی کالکشن هایی که از دیتابیس دارید برای جستجوی مدل خاصی عملیات انجام بدین نمونه های زیر رو ببینید: $users = User::get(); // [User(id:…
کار این متد چیه؟
$orders = Order::all();
بصورت زیر:
$orders = Order::toBase()->get();
اما تفاوتش با حالت اول چیه؟؟؟؟
با استفاده از این متد، دادهها از پایگاهداده بازیابی میشن، اما لاراول کلاس مدل را برای اونها آماده نمیکند.
این کار باعث کاهش حافظه مصرفی و افزایش سرعت میشه!
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
Pishro App
این رو هم یکی از دوستان زحمت کشیده و benchmark گرفته
و خوب توی تصویر میبینید که تو حالت سوم از لحاظ زمانی خیلی بهتر بوده
و البته اگر ستون هایی رو هم که میخوایم تو خروجی داشته باشیم به متد get بدیم باز هم پرفورمنس استفاده از این روش بخاطر عدم استفاده از مدل سبکتر و سریعتر میشه که خوب توی حجم بالاتر بهتر خودش رو نشون میده
متشکر @PhpWebDeveloper جان
👾 @pishroapp
$m1 = memory_benchmark(function () {
$cities = \App\Models\City::all();
});
$m2 = memory_benchmark(function () {
$cities = \App\Models\City::get();
});
$m3 = memory_benchmark(function () {
$cities = \App\Models\City::toBase()->get();
});
dd($m1, $m2, $m3);و خوب توی تصویر میبینید که تو حالت سوم از لحاظ زمانی خیلی بهتر بوده
و البته اگر ستون هایی رو هم که میخوایم تو خروجی داشته باشیم به متد get بدیم باز هم پرفورمنس استفاده از این روش بخاطر عدم استفاده از مدل سبکتر و سریعتر میشه که خوب توی حجم بالاتر بهتر خودش رو نشون میده
متشکر @PhpWebDeveloper جان
Please open Telegram to view this post
VIEW IN TELEGRAM
Pishro App
بچه ها #مسابقه از این قراره میزکارِ من ⚡️ شما تصاویر میزکارتون رو میفرستید و بعد بین تصاویر ارسالی، بهترین میزکار(از لحاظ جذابیت، شیک بودن، تمیزبودن) به نظرسنجی گذاشته میشه و توسط کاربران بهترین میزکار انتخاب میشه من باید یه ربات برای ارسال تصاویر آماده…
بچه تصاویر میزکارتون رو به این آی دی ارسال کنید لطفا
شرایط تصویر ارسالی از میز کار
💜 تصویر باید با کیفیت باشه و اسم خودتون رو همراه تصویر بفرستید لطفا
💝 لطفا هنگام عکس از میزکارتون توی یه کاغذ اسم پیشرو اپ رو بنویسید و کنار میزکارتون بزارین که توی تصویر مشخص باشه
منتظر تصاویر قشنگتون هستیم
🔥 👉 @imanborumand
#مسابقه
شرایط تصویر ارسالی از میز کار
منتظر تصاویر قشنگتون هستیم
#مسابقه
Please open Telegram to view this post
VIEW IN TELEGRAM
معماری میکروسرویس اگر به درستی پیاده سازی نشود بدون شک مشکلات بسیار زیادی میتواند ایجاد کند. از همین رو برای این معماری الگوهای طراحی متفاوتی برای بخش های مختلف آن موجود می باشد.
در این مطلب ما قصد داریم با الگوی طراحی ساگا(Sage) در معماری #میکروسرویس آشنا شویم.
#microservices #saga
Please open Telegram to view this post
VIEW IN TELEGRAM
pishroapp.net
با الگوی طراحی ساگا (Saga Design Pattern) در معماری میکروسرویس آشنا شویم
معماری میکروسرویس اگر به درستی پیاده سازی نشود بدون شک مشکلات بسیار زیادی میتواند ایجاد کند. از همین رو برای این معماری الگوهای طراحی متفاوتی برای بخش های مختلف آن موجود می باشد. در این مطلب ما قصد داریم با الگوی طراحی ساگا(Sage) در معماری میکروسرویس آشنا…
سلام بچه ببخشید چند روزی نبودم
سعی میکنم جبران کنم😁
✨ یکی از مهمترین اصول هنگام برنامه نویسی نامگذاری درست برای فایل ها، توابع، متدها، کلاس ها و... می باشد
💡 من چند Naming Conventions توی #لاراول رو در ادامه برای شما می نویسم که امیدوارم برای شما مفید باشه
👍 برای نامگذاری مدل سعی کنید همیشه از اسم مفرد اون مدل استفاده کنید:
👍 برای فایل های کانفیگ رو بصورت زیر نامگذاری کنید:
👍 ایونت ها و Listener ها باید با توجه به کاری که میخوان انجام بشن یعنی، رویدادها باید با استفاده از زمان گذشته نامگذاری شوند و Listener ها باید بر اساس عملی که انجام می دهند نامگذاری بشن. برای نمونه:
👍 در آخر برای نامگذاری کلاسهاتون اون ها رو بصورت PascalCase بنویسید. مثلا برای یه پرووایدر بصورت زیر نامگذاری کنید:
⭐️ همیشه سعی کنید از نامگذاری های صحیح استفاده کنید که اگر خودتون چند سال بعد یا یه برنامه نویس جدید خواست روی پروژهی شما کار کنه به راحتی با ساختار آشنا بشه.
#laravel
👾 @pishroapp
سعی میکنم جبران کنم
// Correct
class User extends Model {
// Model methods
}
// Incorrect
class Users extends Model {
// Model methods
}
// Correct
config/app.php
config/database.php
// Incorrect
config/App.php
config/DataBase.php
// Correct
class UserRegistered extends Event
{
// Event methods
}
class SendWelcomeEmail extends Listener
{
// Listener methods
}
// Incorrect
class RegisterUser extends Event
{
// Event methods
}
class WelcomeEmailSender extends Listener
{
// Listener methods
}
// Correct
class AppServiceProvider extends ServiceProvider
{
// Service provider methods
}
// Incorrect
class appserviceprovider extends ServiceProvider
{
// Service provider methods
}
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2 2🔥1
✔️ گروه هکری IRLEAKS فعالیت خود را متوقف کرد.
گروه هکری IRLEAKS با اعلام این خبر از طریق کانال تلگرامی خود، از خاتمه دائمی فعالیتهایش خبر داد:
«پایان همیشگی فعالیت گروه IRLeaks!
با توجه به تغییرات جدید در سیاستهای تلگرام مبنی بر همکاری با دولتها برای ارائه اطلاعات کاربران و عدم وجود جایگزین مناسب، تصمیم گرفتیم که به فعالیتهای خود پایان دهیم.
توجه ۱: از این پس هر گونه فعالیتی تحت نام #IRLeaks، قطعاً کلاهبرداری بوده و ارتباطی با ما ندارد.
توجه ۲: اطلاعات مربوط به بیمه، تپسی و حج که قبلاً برای فروش عرضه میشدند، دیگر در دسترس نخواهد بود.»
شایان ذکر است که این گروه در آخرین حمله خود، با هک ۲۰ بانک کشور، موفق به اخذ ۳ میلیون دلار باج از شرکت توسن شدند.
👾 @pishroapp
گروه هکری IRLEAKS با اعلام این خبر از طریق کانال تلگرامی خود، از خاتمه دائمی فعالیتهایش خبر داد:
«پایان همیشگی فعالیت گروه IRLeaks!
با توجه به تغییرات جدید در سیاستهای تلگرام مبنی بر همکاری با دولتها برای ارائه اطلاعات کاربران و عدم وجود جایگزین مناسب، تصمیم گرفتیم که به فعالیتهای خود پایان دهیم.
توجه ۱: از این پس هر گونه فعالیتی تحت نام #IRLeaks، قطعاً کلاهبرداری بوده و ارتباطی با ما ندارد.
توجه ۲: اطلاعات مربوط به بیمه، تپسی و حج که قبلاً برای فروش عرضه میشدند، دیگر در دسترس نخواهد بود.»
شایان ذکر است که این گروه در آخرین حمله خود، با هک ۲۰ بانک کشور، موفق به اخذ ۳ میلیون دلار باج از شرکت توسن شدند.
Please open Telegram to view this post
VIEW IN TELEGRAM
💢 خرید نیروگاه هسته ای توسط مایکروسافت!
مایکروسافت برای تأمین انرژی توسعه و نگهداری هوش مصنوعی خود، توافقی ۲۰ ساله با نیروگاه هستهای Three Mile Island کرد که در سال 1979 میلادی بنا به دلایلی به مشکل برخورده و بصورت قسمی ذوب شده و پس از نشتی انرژی هسته ای تعطیل شده بود.
زینپس با رفع این مشکل تمامی انرژی تولید شده توسط این نیروگاه به سرور های هوش مصنوعی مایکروسافت اختصاص داده میشود.
مورد قابل توجه دیگر این است که، با این مقدار انرژی هستهای میتوان انرژی لازم هشتصد هزار خانه در آمریکا و حدود سه میلیون خانه در ایران را تامین کرد!
👾 @pishraopp
مایکروسافت برای تأمین انرژی توسعه و نگهداری هوش مصنوعی خود، توافقی ۲۰ ساله با نیروگاه هستهای Three Mile Island کرد که در سال 1979 میلادی بنا به دلایلی به مشکل برخورده و بصورت قسمی ذوب شده و پس از نشتی انرژی هسته ای تعطیل شده بود.
زینپس با رفع این مشکل تمامی انرژی تولید شده توسط این نیروگاه به سرور های هوش مصنوعی مایکروسافت اختصاص داده میشود.
مورد قابل توجه دیگر این است که، با این مقدار انرژی هستهای میتوان انرژی لازم هشتصد هزار خانه در آمریکا و حدود سه میلیون خانه در ایران را تامین کرد!
Please open Telegram to view this post
VIEW IN TELEGRAM
بصورت کلی Long Polling یک تکنیک ارتباطی در وب است که به سرور اجازه میدهد تا درخواست کلاینت را باز نگه دارد و تنها زمانی پاسخ دهد که دادهای آماده باشد، در حالی که WebSocket یک پروتکل دوطرفه و پایدار است که ارتباط مداوم و سریعتری بین سرور و کلاینت فراهم میکند.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🔥2
📂| SQL Injection
حمله SQL Injection یا همان تزریق کد SQL نوعی حمله است که در آن فرد یا گروه مهاجم سعی دارند با ارسال کدهای مختلف برای پایگاه داده راهی را برای نفوذ و یا بدست آوردن اطلاعات و یا حتی تخریب اطلاعاتی که نمیدانند چیست و در کجا قرار دارد، انجام دهند. این نوع از حملات یک نوع خطرناک بهشمار میآید و از خانوادهی حملات Code Injection هستند که همان تزریق کد میباشد. عموما URLهایی که کوئریهای مختلفی را درون خود دارند، صفحههای وارد کردن اطلاعات به فرمها و همینطور صفحههای لاگین از مواردی هستند که میتوانند اهداف مناسبی برای اجرای حمله SQL Injection باشد.
اجرای حمله SQL Injection به این صورت است که یک فهرست از دستورات و کوئریهای مختلف برای پایگاه داده تهیه شده و از روزنهای که تشخیص داده شده است و هکرها فکر میکنند که ممکن است کدهایی که از آنجا وارد میشود روی پایگاه داده پردازش شوند به سایت تزریق میشود.
👾 @pishroapp
حمله SQL Injection یا همان تزریق کد SQL نوعی حمله است که در آن فرد یا گروه مهاجم سعی دارند با ارسال کدهای مختلف برای پایگاه داده راهی را برای نفوذ و یا بدست آوردن اطلاعات و یا حتی تخریب اطلاعاتی که نمیدانند چیست و در کجا قرار دارد، انجام دهند. این نوع از حملات یک نوع خطرناک بهشمار میآید و از خانوادهی حملات Code Injection هستند که همان تزریق کد میباشد. عموما URLهایی که کوئریهای مختلفی را درون خود دارند، صفحههای وارد کردن اطلاعات به فرمها و همینطور صفحههای لاگین از مواردی هستند که میتوانند اهداف مناسبی برای اجرای حمله SQL Injection باشد.
اجرای حمله SQL Injection به این صورت است که یک فهرست از دستورات و کوئریهای مختلف برای پایگاه داده تهیه شده و از روزنهای که تشخیص داده شده است و هکرها فکر میکنند که ممکن است کدهایی که از آنجا وارد میشود روی پایگاه داده پردازش شوند به سایت تزریق میشود.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
رندرینگ در Next.js
در دنیای توسعه وب، یکی از دلایل محبوبیت Next.js نحوه مدیریت فرآیندهای رندرینگ است. این
فریمورک انعطافپذیری زیادی در ارائه انواع مختلف رندرینگ برای بهینهسازی عملکرد و تجربه کاربری فراهم میکند. در ادامه به انواع رندرینگ در Next.js میپردازیم:
رندرینگ سمت سرور (SSR) - Server Side Rendering:
در این روش، صفحه وب در سمت سرور رندر شده و به صورت HTML کامل به مرورگر کاربر ارسال میشود. این نوع رندرینگ برای سئو (SEO) و دسترسی سریع به محتوای اولیه بسیار موثر است.
رندرینگ سمت کاربر - کلاینت (CSR) - Client Side Rendering:
در CSR، صفحه ابتدا به صورت یک فایل HTML خالی ارسال میشود و جاوا اسکریپت در مرورگر بارگذاری شده و محتوای پویا را ایجاد میکند. این نوع رندرینگ برای اپلیکیشنهای تکصفحهای (SPA) که تعاملات زیادی دارند، مناسب است.
رندرینگ استاتیک (SSG) - Static Site Generation:
در این روش، صفحات به صورت استاتیک و در زمان ساخت (build time) تولید میشوند و به کاربران ارائه میگردند. این نوع رندرینگ بسیار سریع و مناسب برای محتوای ثابت است.
رندرینگ هیبریدی (ISR) - Incremental Static Regeneration:
ترکیبی از رندرینگ استاتیک و دینامیک است که به شما اجازه میدهد صفحاتی را به صورت استاتیک ایجاد کنید و بعداً بدون نیاز به بازسازی کل سایت، آنها را بهروزرسانی کنید. این روش برای بهبود عملکرد در سایتهای پویا مفید است.
Next.js با پشتیبانی از این انواع مختلف رندرینگ، انعطاف و سرعت بالایی برای ایجاد اپلیکیشنهای وب پیشرفته فراهم میکند. منبع DevTwitter
👾 @pishroapp
در دنیای توسعه وب، یکی از دلایل محبوبیت Next.js نحوه مدیریت فرآیندهای رندرینگ است. این
فریمورک انعطافپذیری زیادی در ارائه انواع مختلف رندرینگ برای بهینهسازی عملکرد و تجربه کاربری فراهم میکند. در ادامه به انواع رندرینگ در Next.js میپردازیم:
رندرینگ سمت سرور (SSR) - Server Side Rendering:
در این روش، صفحه وب در سمت سرور رندر شده و به صورت HTML کامل به مرورگر کاربر ارسال میشود. این نوع رندرینگ برای سئو (SEO) و دسترسی سریع به محتوای اولیه بسیار موثر است.
رندرینگ سمت کاربر - کلاینت (CSR) - Client Side Rendering:
در CSR، صفحه ابتدا به صورت یک فایل HTML خالی ارسال میشود و جاوا اسکریپت در مرورگر بارگذاری شده و محتوای پویا را ایجاد میکند. این نوع رندرینگ برای اپلیکیشنهای تکصفحهای (SPA) که تعاملات زیادی دارند، مناسب است.
رندرینگ استاتیک (SSG) - Static Site Generation:
در این روش، صفحات به صورت استاتیک و در زمان ساخت (build time) تولید میشوند و به کاربران ارائه میگردند. این نوع رندرینگ بسیار سریع و مناسب برای محتوای ثابت است.
رندرینگ هیبریدی (ISR) - Incremental Static Regeneration:
ترکیبی از رندرینگ استاتیک و دینامیک است که به شما اجازه میدهد صفحاتی را به صورت استاتیک ایجاد کنید و بعداً بدون نیاز به بازسازی کل سایت، آنها را بهروزرسانی کنید. این روش برای بهبود عملکرد در سایتهای پویا مفید است.
Next.js با پشتیبانی از این انواع مختلف رندرینگ، انعطاف و سرعت بالایی برای ایجاد اپلیکیشنهای وب پیشرفته فراهم میکند. منبع DevTwitter
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
✔️ مستند HBO: پیتر تاد همان ساتوشی ناکاموتو است
مستند جدید شبکه HBO با عنوان «پول الکتریکی: راز بیت کوین» ادعا میکند که پیتر تاد (Peter Todd)، یکی از توسعهدهندگان اصلی بیت کوین، ممکن است همان ساتوشی ناکاموتو مرموز باشد.
این ادعا در جامعه ارزهای دیجیتال جنجال و تردیدهای زیادی ایجاد کرده است. کارگردان این مستند، کالن هوبک (Cullen Hoback)، شواهدی ارائه داده که شامل تطابق برنامه تحصیلی تاد با الگوهای پستگذاری ناکاموتو و تعاملات خاص در انجمنها است.
با این حال، تاد قاطعانه این ادعاها را رد کرده و آنها را مضحک خوانده است. منتقدان معتقدند شواهد ارائه شده در مستند بر پایه حدس و گمان و فاقد قطعیت است. علیرغم این ادعاها، اکثر جامعه ارزهای دیجیتال همچنان معتقدند که هویت ناکاموتو باید ناشناس باقی بماند، که با خواسته اصلی خالق مرموز بیت کوین همخوانی دارد
👾 @pishroapp
مستند جدید شبکه HBO با عنوان «پول الکتریکی: راز بیت کوین» ادعا میکند که پیتر تاد (Peter Todd)، یکی از توسعهدهندگان اصلی بیت کوین، ممکن است همان ساتوشی ناکاموتو مرموز باشد.
این ادعا در جامعه ارزهای دیجیتال جنجال و تردیدهای زیادی ایجاد کرده است. کارگردان این مستند، کالن هوبک (Cullen Hoback)، شواهدی ارائه داده که شامل تطابق برنامه تحصیلی تاد با الگوهای پستگذاری ناکاموتو و تعاملات خاص در انجمنها است.
با این حال، تاد قاطعانه این ادعاها را رد کرده و آنها را مضحک خوانده است. منتقدان معتقدند شواهد ارائه شده در مستند بر پایه حدس و گمان و فاقد قطعیت است. علیرغم این ادعاها، اکثر جامعه ارزهای دیجیتال همچنان معتقدند که هویت ناکاموتو باید ناشناس باقی بماند، که با خواسته اصلی خالق مرموز بیت کوین همخوانی دارد
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
جالبه!
💻 خوبه بدونید که تو شرکت خودروسازی Volvo دارن Rust رو برای ECU ماشین ها استفاده می کنن
https://tweedegolf.nl/en/blog/137/rust-is-rolling-off-the-volvo-assembly-line
👾 @pishroapp
https://tweedegolf.nl/en/blog/137/rust-is-rolling-off-the-volvo-assembly-line
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
بچه ها توی #لاراول اگر شما یکسری seed دارید که میخواید وقتی مایگریت رو رفرش کردن seed ها هم ران بشن میتونید با دستور زیر همراه Refresh کردن مایگریشن ها این کار رو انجام بدین
این میاد اول #دیتابیس رو تازه سازی میکنه و بعد seed ها رو ران میکنه
#laravel
👾 @pishroapp
php artisan migrate:refresh --seed
این میاد اول #دیتابیس رو تازه سازی میکنه و بعد seed ها رو ران میکنه
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM