برای موفق شدن 🌱 با این عبارت خداحافظی کن: "باشه فردا"🍃 💻 برای دسترسی راحت تر به مطالب به "لیست پین شده" برو🙃 👩💻 Support: @narges_madhi 🪧 ads: @teachifyads 💁♀️ instagram : instagram.com/teachify_ir
✔️ وقتی AI بر دنیا تسلط پیدا کنه
دیگه اهمیت نداره که از ChatGPT تشکر کردید انتهای هر پیام یا نه: ))))
✅ @Teachify | برنامه نویسی
✔️ تشخیص عدد زوج در پایتون با یک روش سریعتر!
در پایتون معمولاً برای تشخیص عدد زوج از این روش استفاده میکنیم:
if num % 2 == 0:
if (num & 1) == 0:
&
آخرین بیت عدد را بررسی میکند. در نمایش باینری، اعداد زوج همیشه آخرین بیتشان 0
است، بنابراین نتیجهی این بررسی 0
میشود و تشخیص عدد زوج بهسادگی انجام میگیرد. %
است، در برخی زبانها عملکرد سریعتری دارد. ✔️ ابزارهای مدرن برای متخصصان داده و هوش مصنوعی
اگر یک دیتاساینتیست یا مهندس هوش مصنوعی هستید، وقت آن رسیده که از ابزارهای مدرنتر و سریعتر استفاده کنید!
▪️کتابخانه Polars جایگزین بهتری برای pandas
است. این کتابخانه با پردازش موازی و استفاده بهینه از حافظه، عملکرد بهتری روی دادههای حجیم دارد. نیازی به Index
ندارد و از Lazy Evaluation پشتیبانی میکند، که باعث کاهش مصرف منابع و افزایش سرعت میشود.
▪️ برای محاسبات عددی، Numba میتواند جایگزین numpy
شود. این ابزار با کامپایل JIT، سرعت اجرای کد را تا چندین برابر افزایش میدهد و حتی از GPU (با CUDA) نیز پشتیبانی میکند. مهمتر از همه، میتوان کدهای numpy
را با چند تغییر کوچک در Numba
اجرا کرد.
▪️ در حوزه یادگیری عمیق، JAX انتخاب بهتری نسبت به TensorFlow
است. سینتکس سادهتر، عملکرد بهینهتر، تمایز خودکار پیشرفته (AutoDiff) و پشتیبانی از تبدیلهای تابعی، آن را به گزینهای ایدهآل برای تحقیقات علمی و مدلهای سفارشی تبدیل کرده است.
▪️ اگر هنوز از Matplotlib
برای رسم نمودار استفاده میکنید، بهتر است Bokeh را امتحان کنید. این کتابخانه امکان ساخت نمودارهای تعاملی و تحت وب را فراهم میکند، برای دادههای حجیم بهینه شده است و میتوان با آن داشبوردهای پویا طراحی کرد.
▪️ برای مدلهای یادگیری ماشین مبتنی بر درخت تصمیم، LightGBM نسبت به XGBoost
عملکرد بهتری دارد. این کتابخانه سرعت آموزش بالاتر، مصرف حافظه کمتر و پشتیبانی بهتری از ویژگیهای دستهای (Categorical Features) دارد.
با این تغییرات، میتوانید سرعت پردازش، کارایی مدلها و بهینهسازی منابع را بهبود دهید.
#پایتون #Python
✅@Teachify | برنامه نویسی
✔️ تفاوت find() و rfind() در پایتون
در پایتون، دو متد find() و rfind() برای جستجوی یک زیررشته در یک رشته استفاده میشوند، اما تفاوت مهمی با هم دارند:
▪️متد find(substring) اولین وقوع substring را در رشته پیدا میکند.
▪️متدrfind(substring) آخرین وقوع substring را در رشته پیدا میکند.
برای مثال:
text = "banana"
print(text.find("a")) # 1 (Index of the first occurrence of "a")
print(text.rfind("a")) # 5 (Index of the last occurrence of "a")
✔️ قضیه CAP در سیستم های توزیع شده
در دنیای مدرن که فناوری حرف اول را میزند، سیستمهای توزیع شده به بخش جداییناپذیری از زندگی ما تبدیل شدهاند. از خرید آنلاین گرفته تا انجام تراکنشهای بانکی و تعامل در شبکههای اجتماعی، همهجا ردپای این سیستمها دیده میشود. اما طراحی این سیستمها کار سادهای نیست. یکی از مفاهیم کلیدی که به ما در درک چالشهای این حوزه کمک میکند، قضیه CAP است. CAP که مخفف Consistency (یکسانی)، Availability (دسترسپذیری) و Partition Tolerance (تحمل پارتیشن) است، چارچوبی برای فهمیدن محدودیتها و انتخابهای پیش روی طراحان سیستمهای توزیع شده ارائه میدهد.
در این مقاله، صفر تا صد قضیه CAP را با زبانی ساده و قابلفهم توضیح میدهیم، جنبههای مختلف آن را بررسی میکنیم و با مثالهایی واقعی مثل خرید بلیط، سیستم بانکی و لایکهای شبکه اجتماعی، کاربردهایش را نشان میدهیم.
در کالی بویز بخوانید: قضیه CAP در سیستم های توزیع شده
✅ @kaliboys | کالی بویز
/channel/PixelGameee
دنیای بازی ها منتظر توئه!
جدیدترین بازی ها با مناسب ترین و بهترین قیمت ، گارانتی دائم و پشتیبانی سریع ⚡️امکان فروش مجدد.
بازیهاتون رو با مناسبترین قیمت از پیکسلگیم تهیه کنید🎮
/channel/PixelGameee
/channel/PixelGameee
✔️ چرا logging بهتر از print است؟
در برنامهنویسی، بسیاری از افراد برای بررسی اجرای کد از print() استفاده میکنند، اما logging قابلیتهای بیشتری دارد که آن را به گزینهای حرفهایتر تبدیل میکند.
تفاوت print و logging در عمل
در روش print، فقط پیامها در کنسول نمایش داده میشوند و هیچ کنترلی روی آنها نداریم:
def divide(a, b):
if b == 0:
print("Error: Division by zero!")
return None
print(f"Result: {a / b}")
return a / b
divide(10, 2) # خروجی: Result: 5.0
divide(5, 0) # خروجی: Error: Division by zero!
import logging
logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s")
def divide(a, b):
if b == 0:
logging.error("Division by zero!")
return None
result = a / b
logging.info(f"Result: {result}")
return result
divide(10, 2) # خروجی: INFO: Result: 5.0
divide(5, 0) # خروجی: ERROR: Division by zero!
✔️ امیدوارم امسال سالی پر از کدهای تمیز، بدون باگ و پر از دیباگهای موفقیتآمیز برات باشه:))
+ امیدوارم هیچوقت SyntaxError نبینی، NullPointerException ازت دور باشه، همه Merge Conflictهات با یه git pull --rebase حل بشه، سرورت هیچوقت تو نصف شب داون نشه، و وقتی یه باگ رو فیکس میکنی، یه باگ دیگه از ناکجا ظاهر نشه! 😅
سال پر از کدهای بهینه و PRهای تأییدشده برات آرزو میکنم!
✅ @Teachify | برنامه نویسی
✔️ بررسی کیفیت کد با Pylint
یکی از چالشهای برنامهنویسی پایتون، رعایت استانداردهای کدنویسی و جلوگیری از خطاهای پنهان است. ابزار Pylint به شما کمک میکند تا کدهای خود را تحلیل کنید و مشکلات آنها را برطرف نمایید.
برای نصب Pylint، کافی است دستور زیر را اجرا کنید:pip install pylint
پس از نصب، میتوانید کیفیت کد خود را با اجرای این دستور بررسی کنید:pylint my_script.py
این ابزار کد شما را تحلیل کرده و خطاهای احتمالی، مشکلات سبک کدنویسی و پیشنهادهای بهبود را نمایش میدهد. هر مشکل با یک کد مشخص نمایش داده میشود. مثلا اگر مستندات (docstring) در ابتدای ماژول وجود نداشته باشد، خروجی شامل چنین پیامی خواهد بود:my_script.py:5:0: C0114: Missing module docstring (missing-module-docstring)
اگر بخواهید برخی از خطاها را نادیده بگیرید، میتوانید آنها را در فایل .pylintrc تنظیم کنید. این ابزار به شما کمک میکند تا کدهای تمیزتر، خواناتر و حرفهایتری بنویسید.
✅ @Teachify | برنامه نویسی
✔️ مهارتهایی برای سینیور شدن
برای اینکه از یک جونیور به یک سینیور حرفهای در پایتون تبدیل بشید، این ۷ مهارت کلیدی رو باید تقویت کنید:
1. درک عمیق از OOP و Design۷ Patterns
سینیورها باید الگوهایی مثل Singleton, Factory, Observer رو بشناسن تا کدهایی مرتب، بهینه و مقیاسپذیر بنویسن.
2. بهینهسازی کد
استفاده از ابزارهایی مثل cProfile برای بررسی عملکرد
انتخاب ساختارهای داده مناسب (مثل deque یا set به جای list در شرایط خاص)
حل مسائل الگوریتمی در LeetCode, Codeforces
3. آشنایی با Parallel Processing و Concurrency
استفاده از Threading, Multiprocessing, Asyncio برای بهبود سرعت اجرای برنامهها
4. تسلط بر تستنویسی
مهارت Unit Testing با pytest
مهارت Integration Testing
مهارت TDD (اول تست بنویس، بعد کد بزن!)
5. کار با پایگاههای داده و بهینهسازی کوئریها
SQL: Indexing, Query Optimization, Django ORM, SQLAlchemy
NoSQL: MongoDB, Redis
6. درک معماری نرمافزار
تکنولوژی Microservices برای مقیاسپذیری
الگوهای معماری مثل MVC و MVP
استفاده از Docker و Kubernetes برای استقرار بهتر
7. مهارتهای نرم (Soft Skills)
ارتباط مؤثر و کار تیمی
کدریویو و اشتراک دانش
مدیریت زمان و حل مسئله
سینیور شدن فقط به کدنویسی نیست! ترکیب مهارتهای فنی و مهارتهای نرم، شما رو به یه برنامهنویس ارزشمند و حرفهای تبدیل میکنه.
✅ @Teachify | برنامه نویسی
✔️ معرفی Pyperclip: مدیریت آسان کلیپبورد در پایتون
در بسیاری از پروژههای برنامهنویسی، نیاز به تعامل با کلیپبورد سیستم وجود دارد؛ به عنوان مثال، کپی و جایگذاری خودکار متن یا دادهها. کتابخانه Pyperclip یک راهکار ساده و کارآمد برای انجام این عملیات در پایتون فراهم میکند.
برای استفاده از این کتابخانه، کافی است آن را با دستور زیر نصب کنید:pip install pyperclip
+ کپی کردن متن به کلیپبورد
import pyperclip
pyperclip.copy("Hello, this text has been copied to the clipboard!")
text = pyperclip.paste()
print(text)
✔️ چالش برنامهنویسی: Two Sum
یکی از سوالات پرطرفدار در مصاحبههای الگوریتمی، مسئلهی Two Sum است.
در این مسئله، یک لیست از اعداد و یک مقدار هدف (target) داده میشود. باید دو عددی که مجموع آنها برابر مقدار هدف است را پیدا کنیم و ایندکسهایشان را برگردانیم.
مثالها:
input: nums = [2,7,11,15], target = 9
output: [0,1] ( nums[0] + nums[1] = 9)
input: nums = [3,2,4], target = 6
output: [1,2]
input: nums = [3,3], target = 6
output: [0,1]
حل بهینه در پایتون (O(n)): استفاده از دیکشنری برای کاهش پیچیدگی زمانی!
def two_sum(nums, target):
hash_map = {}
for i, num in enumerate(nums):
complement = target - num
if complement in hash_map:
return [hash_map[complement], i]
hash_map[num] = i
return []
]
✔️ ادعای ترسناک: یک سال دیگر هوش مصنوعی کاملا جایگزین برنامهنویسان میشود!
«دارو آمودی»، مدیرعامل شرکت انتروپیک (Anthropic) و خالق چتبات Claude، پیشبینی جسورانهای درباره آینده دنیای مهندسی ارائه کرده است.
او معتقد است که هوش مصنوعی تا 6 ماه آینده قادر خواهد بود 90 درصد از تمام کدهای برنامهنویسی را بنویسد و تا یک سال آینده 100 درصد کدها توسط این فناوری نوشته خواهد شد.
✅ @Teachify | برنامه نویسی
🔄 سال جدید دیتا ساینس یاد بگیر و درآمد خوب داشته باش!
🌐 بوتکمپ Data Science دانشکار رو الان با ۴۰٪ تخفیف ثبتنام کن و تا شهریور سال بعد دیتا ساینتیست شو.
🚫 ظرفیت محدود
شروع راه یادگیری و استخدام👇
🔗https://dnkr.ir/2QBVR
🔗https://dnkr.ir/2QBVR
✔️ مکانیابی از روی عکس با Geospy
پروژه Geospy یک ابزار پایتونی است که با استفاده از هوش مصنوعی و سرویس Graylark، موقعیت جغرافیایی یک عکس را بدون نیاز به ابرداده (Metadata) شناسایی میکند.
این ابزار با تجزیه و تحلیل محتوای بصری عکس، تلاش میکند مکان دقیق عکسبرداری را تخمین بزند.
+ دقت کنید: ابزارهای هوش مصنوعی ممکن است دچار خطا شوند، بنابراین همیشه نتایج را بهصورت فنی صحتسنجی کنید.
#هوش_مصنوعی #مکانیابی #پایتون
✅ @Teachify | برنامه نویسی
✔️ جنگو 5.2 منتشر شد!
نسخهی جدید جنگو (Django 5.2) با ویژگیهای زیر منتشر شد:
+ ایمپورت خودکار مدلها در شل
+ پشتیبانی از کلیدهای اصلی ترکیبی (Composite Primary Keys) 😲
+ بهبود در نحوهی override کردن BoundField
این نسخه LTS (پشتیبانی طولانیمدت) است و تا آوریل 2028 پشتیبانی خواهد شد.
Django 5.2 Release Notes
#Django #Python
✅@Teachify | برنامه نویسی
✔️ نرمالسازی دیتابیس(Database Normalization)
اگه تا به الان با مشکلاتی مثل دادههای تکراری، ناسازگاری اطلاعات، یا کندی کوئریها در دیتابیس برخورد کردید، وقتشه که نرمالسازی (Database Normalization) رو جدی بگیرید!
موضوع برمیگرده به یکی از مصاحبههایی که داشتم و دیدم چقدر Normalization برای شرکتها اهمیت داره و تصمیم گرفتم تو پروژههام این موضوع رو رعایت کنم و حتما پیشنهاد میکنم این کار رو برای پروژههای خودتون رعایت کنید.
▪️حالا چرا Normalization؟
+ حذف افزونگی دادهها و کاهش حجم پایگاه داده
+ جلوگیری از ناسازگاریهای اطلاعاتی و مشکلات بهروزرسانی
+ بهبود کارایی و افزایش سرعت پردازش کوئریها
▪️مراحل نرمالسازی (Normalization Forms)
+ مرحله 1NF: هر ستون فقط یک مقدار داشته باشد، بدون گروههای تکراری.
+ مرحله 2NF: حذف وابستگیهای جزئی به کلید اصلی.
+ مرحله 3NF: حذف وابستگیهای انتقالی برای ساختاری تمیزتر و کارآمدتر.
خب سوالی که پیش میاد اینه که آیا همیشه Normalization نیازه؟
در سیستمهای تحلیلی و خواندنی، گاهی Denormalization (غیرنرمالسازی) برای افزایش سرعت خواندن دادهها ضروری است. مهم اینه که تعادل بین ساختار بهینه و عملکرد مطلوب حفظ بشه.
✅@Teachify | برنامه نویسی
✔️ وقتی میخوای پول اشتراک ندی :))
#فان #fun
✅ @Teachify | برنامه نویسی
Data = "022345678"Читать полностью…
Pos = Data.find("1")
Pos2 = Data.rfind("2")
print(Pos, Pos2)
✔️ بیل گیتس: هوش مصنوعی به زودی این افراد را بیکار خواهد کرد
بیل گیتس، بنیانگذار مایکروسافت، در اظهاراتی جنجالبرانگیز پیشبینی کرده است که در دهه آینده هوش مصنوعی جایگزین بسیاری از مشاغل انسانی از جمله پزشکان و معلمان خواهد شد. این میلیاردر فناوری در مصاحبهای با جیمی فالون در برنامه «تونایت شو» تأکید کرد که با پیشرفتهای سریع هوش مصنوعی، دسترسی به خدمات تخصصی مانند مشاوره پزشکی و آموزش باکیفیت به صورت رایگان و همگانی فراهم خواهد شد.
✅ @Teachify | برنامه نویسی
🗣به گزارش خبرآنلاین، شرکت ارتباطات زیرساخت با تأکید بر «قطع نکردن هیچگونه سرویسی»، درباره توقف سرویسهای رادارگیم و ۴۰۳ توضیح داد که هزینه سرورهای مجازی (VPS) این دو سرویس سالانه حدود دو میلیون یورو بوده و پس از پایان قرارداد در تاریخ ۳۱ دسامبر ۲۰۲۴، دیگر تمایلی به پرداخت این هزینهها نداشته است. زیرساخت دلیل این تصمیم را عدم تناسب هزینه با ترافیک تولیدشده عنوان کرده است.
در مقابل، بهزاد اکبری، معاون وزیر ارتباطات و مدیرعامل شرکت ارتباطات زیرساخت در شبکه اجتماعی X اعلام کرد شرکتهای ارائهدهنده خدمات «403» و «رادارگیم» خودسرانه تصمیم به توقف سرویسدهی گرفتهاند.
✔️ 10 مهارت ضروری برای ارتقای سطح برنامهنویسی
اگر به دنبال راههایی هستید که کیفیت کدهای خود را بالا ببرید و به یک توسعهدهنده حرفهایتر تبدیل شوید، این مقاله برای شماست! در دنیای پرسرعت توسعه نرمافزار، داشتن مهارتهای قوی در برنامهنویسی و نوشتن کدهای باکیفیت نه تنها به شما کمک میکند پروژههای بهتری بسازید، بلکه باعث میشود در میان همکاران و کارفرمایان خود متمایز شوید.
در این مطلب، به 10 مهارت ضروری برای ارتقای سطح برنامهنویسی میپردازیم که میتوانید با استفاده از آنها کیفیت کدهایتان را به سطح بالاتری برسانید.
در کالی بویز بخوانید: مهارتهای ضروری برای ارتقای سطح برنامهنویسی
✅ @kaliboys | کالی بویز
✔️ نوروز مبارک
سال 1403 با همه سختیها، چالشها و لحظههای شیرینش داره تموم میشه. شاید بعضی کارها رو تموم نکردی، شاید به همه هدفت نرسیدی، ولی مهم نیست! مهم اینه که هنوز فرصت داری، هنوز میتونی بهترین نسخهی خودت باشی!
سال جدید قراره سالی باشه که دست از بهونهها برداری، رویاهات رو واقعی کنی و جرئت کنی که خودت رو از نو بسازی! به جای منتظر موندن برای اتفاقات خوب، خودت سازندهی اون اتفاقات باش!
+ به عقب نگاه نکن، جلو برو!
+ هیچ چیز قویتر از یه ذهنیت برنده نیست!
+ بزرگ فکر کن، جسور باش، و مهمتر از همه: فقط شروع کن!
و در آخر سالی پر از رشد، برکت، سلامتی و خوشی براتون آرزو میکنم🌱
✅ @kaliboys | کالی بویز
✔️ اولین پیام پاول دوروف پس از بازگشت به دوبی
همانطور که ممکن است شنیده باشید، پس از چند ماه اقامت در فرانسه به دلیل تحقیقات درباره فعالیت مجرمانه در تلگرام، به دبی بازگشتم. این روند همچنان ادامه دارد، اما بازگشت به خانه حس فوقالعادهای دارد.
از قضات تحقیق بابت این امکان، و از وکلایم و تیمم برای تلاشهای بیوقفهشان در اثبات این موضوع که تلگرام در زمینه نظارت، همکاری و مبارزه با جرم همیشه فراتر از تعهدات قانونی خود عمل کرده، سپاسگزارم.
همچنین از میلیونها نفری که در سراسر جهان از من حمایت کردند، عمیقاً قدردانم. جامعه یک میلیارد نفری ما میتواند بر هر چالشی غلبه کند.
✅ @Teachify | برنامه نویسی
✔️ فیلترینگ ویکیتجربه؛ ضربهای به شفافیت در بازار کار
وبسایت ویکیتجربه که کاربران در آن از تجربیات خود در محیطهای کاری و مصاحبههای شغلی مینوشتند، فیلتر شد. هنوز مشخص نیست این اقدام با دستور چه نهادی انجام شده، اما برخی معتقدند فشار کارفرمایان ناراضی دلیل اصلی این فیلترینگ است.
با این تصمیم، کارجویان از اطلاعات مهمی درباره محیطهای کاری محروم میشوند. آیا این پایان راه ویکیتجربه است یا یک وقفه موقت؟
✅ @Teachify | برنامه نویسی
✔️ بازنویسی تایپاسکریپت با Go!
همانطور که احتمالاً شنیدهاید، مایکروسافت تصمیم گرفته تایپاسکریپت را با زبان Go بازنویسی کند که انتظار میرود عملکرد آن را تا ۱۰ برابر سریعتر کند!
با این کار، مایکروسافت به جمع شرکتهای بزرگی پیوسته که از Go استفاده میکنند. اما نکته جالب اینجاست که چرا مایکروسافت از زبان خودش C# یا زبانی مثل Rust که کارایی بالاتری دارد، استفاده نکرد؟
جواب ساده است: سادگی!
زبان Go به دلیل طراحی سادهاش، توسعه را بسیار سریعتر میکند. همین موضوع باعث میشود که بسیاری از شرکتها آن را به زبانهایی که سرعت اجرای بالاتری دارند اما توسعه با آنها پیچیدهتر و کندتر است (مثل Rust) ترجیح دهند.
#TypeScript #Go #Microsoft #Programming
✅ @Teachify | برنامه نویسی
✔️ گوگل از مدل اوپنسورس Gemma 3 رونمایی کرد!
+ این مدل میتواند متن و تصویر را پردازش کند و از بیش از ۳۵ زبان پشتیبانی میکند.
+ در چهار اندازه مختلف عرضه شده: 1B, 4B, 12B, و 27B (اعداد نشاندهندهی تعداد پارامترها هستند).
+ ویژگی اصلی: مصرف کم انرژی، مناسب برای اجرا روی موبایل و لپتاپهای ضعیف!
+ گوگل میگوید که بهترین و بهینهترین مدل برای اجرا روی یک کارت گرافیک H100 است، که یعنی در مقایسه با مدلهای رقیب مثل Llama (متا)، DeepSeek و OpenAI، هزینهی اجرای آن روی سرور کمتر خواهد بود.
الان میتونید با ورود به گوگل ایآی استودیو به این مدل دسترسی داشته باشید.
#گوگل #هوش_مصنوعی #Gemma3 #AI
✅ @Teachify | برنامه نویسی
✔️ وقتی میگن دیتا لیک میشه :))
#فان #fun
✅ @Teachify | برنامه نویسی
💎اولین قرعه کشی کریپتوبازها💎
شانستو برای پر کردن کیف پولت از دست نده
با کریپتو باز ، با جیب پر وارد دنیای کریپتو شو