CodeNeuron
2.86K subscribers
41 photos
7 videos
4 files
59 links
Advancing Coding and Science
Topic: https://t.me/Code_Neuroncom
Download Telegram
خیلی‌ها از Programming می‌ترسن، ولی اگر بخوام صادق باشم، خود کدنویسی برای من بخش ساده‌ی ماجراست. بخش سخت‌تر، تمام زمانی‌ـه که صرف ساختن Logic توی ذهنت می‌کنی و فکر کردن به تمام حالت‌هایی که ممکنه یک راه‌حل در اون‌ها شکست بخوره.

بعضی روزها ساعت‌ها فقط می‌شینم و فکر می‌کنم. یه راه‌حل رو توی ذهنم می‌سازم، خرابش می‌کنم، دوباره از اول می‌چینمش و همین چرخه رو ادامه می‌دم تا به چیزی برسم که از نظر منطقی برام درست و قابل اتکا باشه.

جالب اینجاست که این مدل فکر کردن فقط توی کار به دردم نخورده. کم‌کم تبدیل شده به بخشی از نحوه تصمیم‌گیریم توی زندگی. اینکه قبل از تصمیم گرفتن، سناریوهای مختلف رو بررسی کنی، پیامدهاشون رو ببینی و سعی کنی به‌جای واکنش لحظه‌ای، منطقی‌ترین مسیر رو انتخاب کنی.

شاید برای همینه که همیشه Chess رو هم دوست داشتم. به نظرم Coding و Chess خیلی بیشتر از چیزی که در ظاهر به نظر میاد به هم شبیهن. توی هر دو، باید چند حرکت جلوتر رو ببینی، حالت‌های مختلف رو تصور کنی، اشتباهات احتمالی رو پیش‌بینی کنی و بدون عجله بهترین تصمیم ممکن رو پیدا کنی.

واقعاً نمی‌دونم اگر Programming و Chess وارد زندگی من نمی‌شدن، امروز چه شکلی فکر می‌کردم یا کجا بودم. ولی مطمئنم هر دو، بیشتر از اینکه فقط یک مهارت یا سرگرمی باشن، روی نحوه فکر کردنم تأثیر گذاشتن.

#Programming
#Coding
#Chess
#ProblemSolving
#CriticalThinking
#Logic
#SoftwareEngineering
👌1
CodeNeuron
خیلی‌ها از Programming می‌ترسن، ولی اگر بخوام صادق باشم، خود کدنویسی برای من بخش ساده‌ی ماجراست. بخش سخت‌تر، تمام زمانی‌ـه که صرف ساختن Logic توی ذهنت می‌کنی و فکر کردن به تمام حالت‌هایی که ممکنه یک راه‌حل در اون‌ها شکست بخوره. بعضی روزها ساعت‌ها فقط می‌شینم…
شاید یکی از دلایلی که امروز صدها Open Source C2 داریم ولی تعداد خیلی کمی از اون‌ها واقعاً در دنیای واقعی قابل استفاده‌ان، همین باشه.

بعد از یه نقطه مشخص، واقعاً Coding بخش کوچکی از نتیجه نهایی می‌شه. شاید حتی همون ۱۰ درصدی که همه بیشتر می‌بیننش. بخش اصلی ماجرا جاییه که باید خارج از چارچوب معمول فکر کنی، Research خودت رو انجام بدی، فرضیاتت رو به چالش بکشی و یک سناریو رو بارها و بارها تست کنی.

ساختن چیزی که روی کاغذ کار می‌کنه یک مسئله‌ست. ساختن چیزی که در دنیای واقعی قابل اتکا باشه، مسئله کاملاً متفاوتیه.

برای همین فکر می‌کنم تفاوت بین یک پروژه معمولی و یک ابزار واقعاً کاربردی، اغلب نه در تعداد Lines of Code، بلکه در میزان فکر، تحقیق و Testing پشت اون مشخص می‌شه.

در نهایت Coding شاید فقط ۱۰ درصد نتیجه باشه. ۹۰ درصد دیگه مربوط به طرز فکر، Research و تست بی‌پایانه.

#Programming
#Cybersecurity
#RedTeam
#C2
#OpenSource
#OffensiveSecurity
#Pentesting
#SoftwareEngineering
#Research
#ProblemSolving
👌1
یک موضوع دلی رو بگم بهتون دوستان.

امروز داشتم با یکی از دوستام صحبت می‌کردم و یاد یه عادت قدیمی افتادم. سال ۲۰۱۸، وقتی تازه شروع کرده بودم Windows Internals رو یاد بگیرم، من و چندتا از دوستام یه عادت نسبتاً ساده برای خودمون ساخته بودیم.

هر روز ۱۰ تا فایل EXE یا DLL از System32 انتخاب می‌کردیم و فقط درباره‌شون می‌خوندیم. نه خبری از Hack خاصی بود، نه Reversing و نه کار عجیب‌وغریبی. اسم فایل، کاربردش، اینکه چرا وجود داره، چه کاری انجام می‌ده و هر چیزی که می‌شد درباره‌ش پیدا کرد.

این کار رو تقریباً ۶۰ روز ادامه دادیم و حجم دانشی که فقط با Google کردن و خوندن به دست آوردیم واقعاً عجیب بود.

خیلی وقت‌ها فکر می‌کنیم برای یادگیری یک حوزه حتماً باید یک Course گرون، یک کتاب خاص یا یک مسیر پیچیده داشته باشیم. در حالی که اصل ماجرا خیلی ساده‌تره. یک موضوع مشخص انتخاب کن، هر روز براش وقت بذار و این کار رو با Discipline ادامه بده.

خیلی‌ها با دیدن مباحث Advanced از همون اول می‌ترسن، در حالی که چیزی که واقعاً تفاوت ایجاد می‌کنه، کیفیت Fundamentals هست.

اگر پایه‌هات رو واقعاً خوب بفهمی، مباحث پیچیده‌تر دیگه اون‌قدر ترسناک نیستن. خیلی از چیزهایی که در ابتدا Advanced به نظر می‌رسن، در نهایت فقط ترکیب عمیق‌تری از همون مفاهیم پایه‌ان.

به نظرم یکی از بزرگ‌ترین اشتباهات در یادگیری اینه که همیشه دنبال چیزهای سخت‌تر بگردیم، در حالی که شاید بهتر باشه همون چیزهای ساده رو عمیق‌تر بفهمیم.

و البته بله، من خودم چندتا Course هم می‌فروشم؛ ولی حتی با وجود این، هنوز فکر می‌کنم چیزی که بیشتر از هر منبعی نتیجه می‌ده، Time + Consistency + Discipline هست.

#WindowsInternals
#Cybersecurity
#Programming
#Fundamentals
#Learning
#ReverseEngineering
#Infosec
#Security
#SoftwareEngineering
#Discipline
❤1
صرفاً Prompt نوشتن و کپی کردن خروجی AI ازت Developer نمی‌سازه.

اگر کدی که AI برات نوشته رو نمی‌فهمی، نمی‌تونی Debug اش کنی، نمی‌دونی چرا این Architecture انتخاب شده و وقتی چیزی خراب می‌شه نمی‌فهمی مشکل از کجاست، در واقع بیشتر از اینکه Developer باشی، AI Babysitter هستی.

وایب کدینگ خودش مشکلی نداره. مشکل از جایی شروع می‌شه که فکر کنی استفاده از AI جای فهمیدن Programming رو گرفته.

#VibeCoding
#Programming
#SoftwareEngineering
#AI
#Developers
#Coding
👌1
واقعاً چرا هنوز توی خیلی از مصاحبه‌های Programming ازت می‌خوان Code رو از صفر و با دست بنویسی؟

وقتی قراره در دنیای واقعی از AI برای کدنویسی استفاده کنیم، شاید بهتر باشه مصاحبه‌ها هم از این مدل ارزیابی فاصله بگیرن.

به‌جای اینکه ببینیم کسی چقدر سریع می‌تونه چند خط Code رو بدون کمک بنویسه، بهتر نیست درباره Fundamentals سؤال بپرسیم؟ اینکه چرا یک تکنولوژی رو انتخاب می‌کنی، چطور یک مسئله رو تحلیل می‌کنی، چطور Architecture مناسب رو انتخاب می‌کنی، چطور یک Bug رو پیدا می‌کنی و چطور تشخیص می‌دی کدی که AI تولید کرده واقعاً درست و قابل استفاده هست یا نه.

در نهایت، AI می‌تونه Code رو بنویسه. چیزی که هنوز باید خود Developer بلد باشه، فهمیدن مسئله و تصمیم گرفتن درباره راه‌حل درستشه.

شاید وقتشه Technical Interview هم خودش رو با دنیای AI وفق بده.

#AI
#Programming
#Coding
#SoftwareEngineering
#TechnicalInterview
#Developers
#VibeCoding
#ArtificialIntelligence
👌1
یه پدیده جالب با زیاد شدن ابزارهای AI به وجود اومده: آدم‌هایی که چند ماه با مدل‌های زبانی کار کرده‌اند و ناگهان خودشون رو متخصص AI معرفی می‌کنند.

مسئله این نیست که از AI استفاده می‌کنند. اتفاقاً استفاده از AI می‌تونه یک مهندس رو چند برابر سریع‌تر کنه.

مشکل از جایی شروع میشه که خروجی مدل رو بدون اینکه بفهمی، قبول کنی.

مدل کد می‌نویسه، تو اجراش می‌کنی و چون کار کرد، مستقیم می‌ره Production.

مدل یک تحلیل امنیتی تولید می‌کنه، تو همون رو داخل گزارش می‌ذاری.

مدل یک باگ پیدا می‌کنه، بدون اینکه بفهمی چرا آسیب‌پذیری وجود داره، اعلامش می‌کنی.

اینجا دیگه AI ابزار نیست؛ تبدیل شده به جایگزین دانش.

و این خطرناک‌ترین قسمت ماجراست.

چون LLM می‌تونه با اعتمادبه‌نفس کامل چیزی بگه که کاملاً اشتباهه. اگر ندونی چه چیزی درست و چه چیزی غلطه، عملاً هیچ راهی برای تشخیصش نداری.

در امنیت سایبری این موضوع حتی جدی‌تره. تصور کنید کسی با کمک AI یک Security Audit انجام بده، اما خودش درک عمیقی از Web Security، شبکه، سیستم‌عامل یا معماری برنامه نداشته باشه. ممکنه گزارش خیلی حرفه‌ای به نظر برسه، اما چند آسیب‌پذیری مهم کاملاً از دست برن.

در نهایت هم وقتی چیزی خراب بشه، کسی باید بیاد و بفهمه واقعاً چه اتفاقی افتاده.

اینجاست که تفاوت «AI User» و «Engineer» مشخص میشه.

مهندس از AI استفاده می‌کنه، ولی خروجی AI رو بررسی می‌کنه.

می‌تونه توضیح بده چرا این کد کار می‌کنه.

می‌تونه تشخیص بده کجا احتمال Hallucination وجود داره.

می‌تونه خروجی مدل رو تست و نقد کنه.

و مهم‌تر از همه، اگر AI اشتباه کرد، خودش متوجه میشه.

من کاملاً موافق استفاده از AI هستم و فکر می‌کنم کسی که امروز از ابزارهای AI استفاده نمی‌کنه، بخشی از بهره‌وری خودش رو از دست میده.

اما یک جمله رو باید همیشه یادمون باشه:

هوش مصنوعی می‌تونه سرعت کار یک مهندس رو بالا ببره؛ ولی نمی‌تونه مسئولیت فهمیدن کار رو از دوش مهندس برداره.

چکش، نجار نیست.

#هوش_مصنوعی
#مهندسی_نرم_افزار
#امنیت_سایبری

#AI
#SoftwareEngineering
#CyberSecurity
❤1
مایکروسافت یک قدم جدی دیگه با Rust برداشت.

طبق اعلام یکی از مهندسان ارشد بخش ابزارهای توسعه مایکروسافت، Rust حالا به یکی از زبان‌های اصلی توسعه داخلی این شرکت تبدیل شده و در کنار C++، C# و TypeScript قرار گرفته.

نکته جالب‌تر اینه که این فقط یک تصمیم روی کاغذ نیست. مایکروسافت همین حالا از Rust در بخش‌هایی از Windows، Office و حتی Copilot استفاده می‌کنه.
به نظرم مهم‌ترین بخش خبر همین‌جاست.

سال‌ها C و C++ انتخاب اصلی برای بخش‌هایی بودن که performance و کنترل پایین‌سطح اهمیت داشت. ولی مشکل memory safety همیشه یکی از چالش‌های بزرگ این حوزه بوده.

راست دقیقاً اینجا وارد می‌شه؛ سعی می‌کنه performance نزدیک به زبان‌های سیستم‌سطح رو نگه داره، ولی بخش بزرگی از خطاهای مربوط به memory safety رو در زمان کامپایل کنترل کنه.

اینکه مایکروسافت Rust رو در کنار C++ و C# و TypeScript به‌عنوان یکی از زبان‌های اصلی داخلی خودش قرار داده، به نظرم نشون می‌ده جایگاه Rust داره از «زبان جذاب برای پروژه‌های جدید» به «ابزار جدی برای زیرساخت و محصولات بزرگ» تغییر می‌کنه.

البته این به معنی کنار گذاشتن C++ نیست. برای چنین شرکتی احتمالاً سال‌ها باید هر دو زبان کنار هم وجود داشته باشن.

ولی برای کسی که می‌خواد وارد حوزه‌هایی مثل سیستم‌پروگرمینگ، امنیت، زیرساخت یا نرم‌افزارهای performance-critical بشه، به نظرم Rust دیگه زبانی نیست که بشه خیلی راحت نادیده‌اش گرفت.

راست کم‌کم داره جای خودش رو پیدا می‌کنه. 🦀

#برنامه_نویسی
#راست
#مایکروسافت
#Rust
#Microsoft
#SoftwareEngineering
👏2
به نظرم خیلی‌ها دارن بدون اینکه واقعاً بفهمن کدی که تولید می‌کنن چطور کار می‌کنه، همین‌طوری YOLO می‌کنن.

با Vibe Coding بعضی وقت‌ها واقعاً می‌تونی از A برسی به Z.

ولی خیلی وقت‌ها چیزی که تحویل می‌گیری اینه:

A → F + N → Z

وسطش خالیه.

مدل بهت می‌گه:
«انجام شد، از A تا Z کامل شد.»

و تو هم بررسی نمی‌کنی.

یا حتی بدتر؛ از خود مدل می‌خوای که کد خودش رو بررسی کنه.

اینجاست که یه مشکل جدی به وجود میاد.

مدل ممکنه روی اشتباه خودش اصرار کنه، چون به جای اینکه واقعاً صحت کار رو ثابت کنه، دنبال کامل‌کردن همون چیزی می‌ره که فکر می‌کنه باید کامل شده باشه.

برای همین من فکر می‌کنم Vibe Coding قرار نیست جای فهمیدن رو بگیره.

هوش مصنوعی رو استفاده کن.

سریع‌تر کد بزن.

کارهای تکراری رو بده بهش.

ولی از Loop خارج نشو.

کدی که نمی‌فهمی چطور کار می‌کنه، واقعاً هنوز مال تو نیست.



#VibeCoding
#AI
#Programming
#SoftwareEngineering
#Developers
#LLM
👍3
چیزی که توی Pexo برای من جالبه، فقط ساخت کلیپ با AI نیست.
مشکل اصلی تولید ویدیو معمولاً خود ساختن کلیپ نیست؛ صدا، کپشن، ریتم و تدوین نهایی زمان زیادی می‌گیرن.

و Pexo سعی کرده کل این فرایند رو یک‌جا انجام بده. شما Brief رو می‌دید و خودش ویدیوی نهایی رو با Voiceover، موسیقی و Caption آماده می‌کنه.
حتی تغییرات بعدی رو هم میشه با Chat انجام داد، بدون اینکه وارد Timeline بشید.

به نظرم برای تولید سریع محتوای Social Media می‌تونه جالب باشه. اگر اهل ساخت ویدیو هستید، توصیه می‌کنم یه تستی باهاش بگیرید.


http://invite.pexo.ai/4AioGJm


#LLM
#AI
#SoftwareEngineering
#Technology
❤1
بعضی‌ها معتقدن تا سال ۲۰۳۶، هوش مصنوعی می‌تونه بخش بزرگی از بیماری‌هایی که امروز درمان قطعی براشون نداریم، مثل سرطان و آلزایمر، رو قابل‌درمان یا قابل‌کنترل کنه.

به نظرم بخش جذاب ماجرا اینه که AI فقط برای تشخیص بیماری نیست؛ می‌تونه در کشف دارو، طراحی درمان‌های شخصی‌سازی‌شده و تحلیل حجم عظیمی از داده‌های پزشکی هم نقش داشته باشه.

البته اینکه بگیم «تا ۲۰۳۶ همه بیماری‌ها درمان میشن» فعلاً بیشتر یک پیش‌بینی خوش‌بینانه‌ست تا یک واقعیت علمی قطعی. ولی سرعت پیشرفت این حوزه واقعاً قابل توجهه.

البته من با این گزاره تا سال 2036 مخالفم!!!!

#Ai
#SoftwareEngineering
#LLM
#Technology
#AIAgents
#Cancer
❤1
طبق سایت DB-Engines، صدها سیستم مدیریت پایگاه داده در دنیا وجود دارن که هرکدوم برای نیازها و سناریوهای متفاوتی طراحی شدن.



رتبه‌بندی اینه:
۱. Oracle
۲. MySQL
۳. Microsoft SQL Server
۴. PostgreSQL
۵. MongoDB
۶. Snowflake
۷. Databricks
۸. Redis
۹. IBM Db2
۱۰. Apache Cassandra

نکته جالب اینجاست که همه این سیستم‌ها دقیقاً یک کار رو به یک روش انجام نمی‌دن.

مثلاً MySQL و PostgreSQL بیشتر برای ذخیره و مدیریت داده‌های رابطه‌ای شناخته می‌شن؛ Redis روی ذخیره‌سازی داده‌های کلید-مقدار و دسترسی سریع تمرکز داره.

و خود Snowflake و Databricks هم بیشتر در دنیای تحلیل داده و پردازش‌های سنگین مطرح هستن.

و SQLite هم با وجود سبک بودن و نداشتن نیاز به سرور جداگانه، یکی از گزینه‌های مهم برای اپلیکیشن‌ها و پروژه‌های سبک محسوب می‌شه.

البته یه نکته مهم: رتبه DB-Engines لزوماً به معنی بیشترین نصب یا استفاده واقعی نیست. این رتبه‌بندی از شاخص‌هایی مثل میزان توجه در وب، بحث‌های فنی، آگهی‌های شغلی و حضور در فضای حرفه‌ای استفاده می‌کنه.

در نهایت، بهترین دیتابیس لزوماً رتبه اول رو نداره.
انتخاب درست به نوع پروژه، حجم داده، الگوی دسترسی، مقیاس‌پذیری و نیازهای فنی بستگی داره.



#برنامه_نویسی
#پایگاه_داده
#فناوری

#Database
#DBEngines
#SoftwareEngineering
👨‍💻2👍1
می‌خوام به یک نکته مهم درباره استفاده از هوش مصنوعی اشاره کنم.

به دید‌ من استفاده از AI در برنامه‌نویسی زمانی بیشترین ارزش رو ایجاد می‌کنه که در کنار اون، درک درستی از اصول فنی و منطق برنامه‌نویسی داشته باشیم.

صرفاً تولید کد با کمک هوش مصنوعی به معنای توسعه بهتر نرم‌افزار نیست. اگر نتونیم خروجی‌های AI رو تحلیل کنیم، صحت اون‌ها رو بسنجیم و خطاهاشون رو تشخیص بدیم، ممکنه به‌جای افزایش بهره‌وری، پیچیدگی و مشکلات بیشتری به پروژه اضافه کنیم.

در مقابل، وقتی دانش فنی کافی داشته باشیم، AI می‌تونه به یک ابزار قدرتمند برای حل مسائل، بهینه‌سازی کد و افزایش سرعت توسعه تبدیل بشه.

به بیان ساده، مهم‌تر از توانایی AI در تولید کد، توانایی ما در درک، ارزیابی و هدایت اون کدهاست.

#AI
#Programming
#SoftwareEngineering
❤7😍6👍4🔥4🎉3👏2