موری در ژاپنی به معنی جنگل 🌳 و در لاتین به معنی مرگه 🪦. یه عاشق عکاسی، آسمون، طبیعت، چای آتیشی، راه رفتن زیاد، بارون، موسیقی، لینوکس، نود جی اس و ری اکت 💻
حالا شما هی فاز مخالف AI بردارید و خودتون رو گول بزنید، ولی برای خلق همچین محصولی، یه تیم چند نفره باید هفتهها کار میکردن.
توی لپتاپ یا دسکتاپ باز کنید، ببینید و پشماتون بریزه.
https://t.co/6KfirkqP9x
الان جایی گفتم اندازه نیروی استرالیایی به من دستمزد بده؟ سعی کن قبل از نظر دادن اول درست بخونی که متوجه قضیه بشی. توی همون پوزیشن یه جونیور داخل استرالیاست ساعتی ۴۵ تا ۵۰ دلار حداقل دستمزدیه که طلب میکنه، رقمی هم که من گفتم یه رقم کاملا منصفانه متناسب با جغرافیای خودم بوده. اینکه خیلیها نمیرن سراغ هندیها و پاکستانیها هم نیازی به توضیح نداره، کسی مجبورشون نکرده، برن سراغ هندی و پاکی.
یعنی نفرت انگیزتر از این ایرانیهای مثلا کارآفرین خارج نشین که دنبال نیروی ارزون میگردن وجود نداره. جاکش بیشتر از یکساعت و نیم حرف زد و توقعاتشو گفت، شرح وظایف داد و تهش که در مورد قیمت کار صحبت کردیم، عین الاغ رم کرد که من اگر میخواستم اینقدر هزینه کنم که دنبال نیروی ایرانی نمیگشتم.
حالا قیمتی که من بهش گفتم ساعتی ۲۲ دلار استرالیا(که مثلا کار رو بتونم بگیرم - حداقل دستمزد کار جنرال تو استرالیا حدودا ساعتی ۲۶ دلاره) بعد آقا چی تو ذهنش بود؟ ساعتی ۱ تا ۱.۵ دلار استرالیا😳
یعنی من ۱۲۰ ساعت برات کار کنم(اونم با اون اختلاف ساعت که مجبورم از ۵.۵ صبح بیدار شم)، تازه آنکال هم باشم و هروقت تماس گرفتی در لحظه جوابتو بدم و تو جلساتت شرکت کنم، واسه ماهیانه ۱۸۰ دلار استرالیا؟ حاجی خودت خجالت نکشیدی؟ چطوری فحشکشت نکنم؟ چطوری روتون میشه واقعا؟
دوستان من ایران نیستم، ترکیه زندگی میکنم. عملا ساعتی حتی تا ۱۰ دلار هم شوخی مضحک بحساب میاد. حالا بماند که ازم بیل رسمی از شرکت خودم میخواست که مالیاتش هم باید پرداخت میشد.
حالا این رقم برای من بوده، نه نیرویی که داخل ایرانه و اونی که داخل ایران هست قطعا کمتر بهش پرداخت میکنه.
اصلاح میکنم، منظورش ۱-۱.۵ مت بوده ظاهرا(از بس عصبانی بودم متن پیام رو درست نخوندم) که البته باز هم میشه ۵ تا ۸ دلار و اصل موضوع همچنان سر جاشه و حتی حداقل حقوق کارگر توی ترکیه هم نیست.
بنظرم این یکی از مهمترین مواردیه که توی مهندسی نرمافزار با AI باید در موردش بدونیم. درواقع رسیدیم به اون نقطه که دیگه استک و زبان و تکنولوژی محل بحث نیست. یعنی شما میتونی با زبانی که بصورت تخصصی هم باهاش کار نکردی، پروژهت رو پیش ببری و محصول خوبی هم تولید کنی، ولی حتما باید با مفاهیم و معماری مهندسی نرمافزار آشنا باشی. یعنی شما میشی تصمیم گیرندهی اصلی در مورد محصول و تصمیم گیری جزئیات باید با شما باشه.
حالا این مسیر چطور پیش میره؟
برای من اینطوریه که قبل از هرچیزی planning و brainstorming میکنم و یه فولدر داکیومنت میسازم که همهی جزئیات پروژه توش باشه. این مرحله ممکنه چند روز هم طول بکشه. اما داکیومنت نهایی باید حداقل این چندتا خصوصیت رو داشته باشه:
۱. همهی نیازمندیهای پروژه با جزئیات باید نوشته شده باشه، حتی ریزترین جزئیات.
۲. تا جای ممکن تناقض و مغایرت بین فلوها وجود نداشته باشه، و اگر جایی به مغایرت خورد، باید از من بپرسه و من تصمیم نهایی رو بگیرم.
۳. مطلقا هیچ تصمیمی توسط AI نهایی نشده باشه(چه از انتخاب استک، چه کتابخانههایی که باید توی پروژه استفاده بشه، حتی ورژنها). همه چیز باید توسط خودم تایید بشه.
۴. اجرای پروژه فاز بندی بشه و هر فاز تسکهای خودش رو داشته باشه.
۵. قوانین بصورت دقیق نوشته شده باشه(برای مثال ترجیح من اکثرا Functional Programming هست و تا جای ممکن از نوشتن کلاس پرهیز میکنم؛ پس AI هم باید از همین الگو پیروی کنه. یا مثلا بعد از پایان هر تسک کد باید توسط یک ایجنت مستقل، ریویو بشه و در صورتی که مشکلی وجود نداشت با مسیج فرمت بندی شدهی من کامیت بشه).
۶. قوانین سختگیرانه برای نوشتن تست برای پروژه درنظر میگیرم همیشه(این خیلی مهمه، چون خیلی وقتها AI توی نوشتن تست تقلب میکنه که فقط اون تست pass بشه).
و بعد از همهی اینها پروژه رو فاز به فاز و تسک به تست شروع به پیاده سازی میکنم(با رعایت کامل dependency های هرفاز). تا جای ممکن Native پیش میرم و نمیذارم پروژه agent-driven نوشته بشه(مگر حس کنم واقعا لازمه).
در نهایت پایان هر فاز یه گزارش مختصر و مفید میده و تسکهای اون فاز رو خودم اجرا، مرور و تست میکنم.
در آخر هم بعد از اتمام همهی فازها، یه تست پلن میریزم و از AI میخوام با توجه به فلوهای پروژه، سناریوهای مختلف رو بررسی کنه و توی تست پلن بیاره.
این وسط هم بسته به پروژه از یکسری پلاگین و اسکیل استفاده میکنم که مهمترینش Superpowers هست که تقریبا توی همه پروژهها ازش استفاده میکنم، خصوصا برای brainstorming، planning و ریویوها.
اگر قرار باشه AI کد بزنه و من ریویو کنم، عملا سرعت دولوپ به همون میزان سرعت من پایین میاد. میزان بازدهی یک سیستم به اندازه ضعیف ترین عضو اون سیستم هست.
مدل های فعلی نه اونقدر ضعیفن که بشینی کل کدهارو ریویو کنی، نه اونقدر کارشون خوبه که بشه چشم بسته بهشون اعتماد کرد
چیکار میکنم؟
امروز فرصت کردم که یه تست سنگین اجرا کنم.
از کلاد خواستم یک مجموعه تست طراحی کنه، و از طریق API تست رو انجام بده و در نهایت یه گزارش ازش بنویسه. در نهایت خروجی تستها رو به کلاد و جیپیتی دادم تا هردو بررسی و قضاوت کنن(خصوصا در مورد کیفیت کد خروجی).
خلاصه نتیجه رو اینجا براتون میذارم.
درنظر داشته باشید که این فقط یه تست کلی بوده و بنظرم اهالی فن باید دقیقتر و بیشتر مورد بررسی قرارش بدن.
در مجموع از خروجی خیلی راضی بودم، بینقص نبوده، اما بسیار خوب و فرای انتظارم بوده. خصوصا سرعت پاسخگویی و تفکر(thinking).
پروژه Avalon رو تست کردم و نتیجهش واقعا عجیب بود.
روی RX 7900XTX و ۶۴ گیگ رم تونستم Qwe3.8-Flash-Next رو با ۱۲۵ میلیارد پارامتر ران کنم و نتیجه شگفت زدهم کرد. میانگین ۱۲۲ توکن بر ثانیه با خروجی به شدت با کیفیت!
این چند روز احتمالا، بیشتر در موردش مینویسم.
امروز فرصت کردم که یه تست سنگین اجرا کنم.
از کلاد خواستم یک مجموعه تست طراحی کنه، و از طریق API تست رو انجام بده و در نهایت یه گزارش ازش بنویسه. در نهایت خروجی تستها رو به کلاد و جیپیتی دادم تا هردو بررسی و قضاوت کنن(خصوصا در مورد کیفیت کد خروجی).
خلاصه نتیجه رو اینجا براتون میذارم.
درنظر داشته باشید که این فقط یه تست کلی بوده و بنظرم اهالی فن باید دقیقتر و بیشتر مورد بررسی قرارش بدن.
در مجموع از خروجی خیلی راضی بودم، بینقص نبوده، اما بسیار خوب و فرای انتظارم بوده. خصوصا سرعت پاسخگویی و تفکر(thinking).
پروژه Avalon رو تست کردم و نتیجهش واقعا عجیب بود.
روی RX 7900XTX و ۶۴ گیگ رم تونستم Qwe3.8-Flash-Next رو با ۱۲۵ میلیارد پارامتر ران کنم و نتیجه شگفت زدهم کرد. میانگین ۱۲۲ توکن بر ثانیه با خروجی به شدت با کیفیت!
این چند روز احتمالا، بیشتر در موردش مینویسم.
@Thisisathen این پست منو برد به بیشتر از ۱۰ سال پیش وقتی که ترانهی They Don't Care About Us رو با پیانو خونده بود.
چقدر یه آدم دیگهای بودم اون زمان، چقدر طی این سالها فرق کردم 🥲
@ReleaseCore256 خود Avalon هنوز روی مک ساپورت نداره و عملا منطقش در تضاده با مک.
در واقع معماری Avalon زمانی معنی داره که بخوای از رم و دیسک در کنار GPU استفاده کنی. در صورتی توی مک، مموری یونیفای هست و عملا دسترسی بهش وجود داره.
این REA یجوری ترسناکه که از دیشب که تستش کردم، کرک و پشمی بهم نمونده.
دیشب یه فایل apk بهش دادم و از ترس اینکه کلاد اکانتمو بن کنه، روی لوکال و Qwen دیکامپایلش کردم. عملا زندگینامه اپ، حتی کلیدهای API فایربیس رو درآورد و یه اسکریپ نوشت برام که مستقیم و خارج از اپ API رو کال کنه. تهش هم ازش خواستم یه داکیومنت کامل از همهی endpoint ها و ساختار اپ بسازه. در ادامه هم با تحلیل endpoint ها یه تصویر کلی از بکند داد و ازش داکیومنت ساخت.
تا اینجای کار شاید بگید خب که چی، ولی که چیش تازه اینجا شروع شد. همهی داکیومنتها و اطلاعاتی که از اپ داشتم رو بازنویسی کردم در قالب داکیومنتهای یه پرداکت جدید(که کلاد بهش گیر نده و سیشن رو فلگ نکنه) و از کلاد خواستم از صفر کل پروژه رو بسازه. صبح که بیدار شدم دیدم کل بکند، فرونت و اپ رو با فلاتر از صفر ساخته تست کرده و خودش باگهاشو برطرف کرده، و نه تنها خیلی تمیز کار میکنه، بلکه با یکم کار بیشتر میشه به عنوان که پروداکت واقعی ازش استفاده کرد.
حالا هی بگید AI قرار نیست بیکارمون کنه