147
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-17 روز
+930 روز
در حال بارگیری داده...
جذب مشترکین
اوت '26
اوت '26
+10
در 2 کانالها
ژوئیه '26
+4
در 1 کانالها
Get PRO
ژوئن '26
+5
در 1 کانالها
Get PRO
مه '26
+1
در 0 کانالها
Get PRO
آوریل '260
در 0 کانالها
Get PRO
مارس '260
در 0 کانالها
Get PRO
فوریه '26
+4
در 1 کانالها
Get PRO
ژانویه '26
+2
در 1 کانالها
Get PRO
دسامبر '25
+7
در 1 کانالها
Get PRO
نوامبر '250
در 1 کانالها
Get PRO
اکتبر '25
+56
در 2 کانالها
Get PRO
سپتامبر '25
+81
در 3 کانالها
Get PRO
اوت '250
در 1 کانالها
Get PRO
ژوئیه '250
در 3 کانالها
Get PRO
ژوئن '25
+3
در 0 کانالها
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 29 اوت | 0 | |||
| 28 اوت | 0 | |||
| 27 اوت | 0 | |||
| 26 اوت | 0 | |||
| 25 اوت | 0 | |||
| 24 اوت | 0 | |||
| 23 اوت | 0 | |||
| 22 اوت | 0 | |||
| 21 اوت | 0 | |||
| 20 اوت | 0 | |||
| 19 اوت | 0 | |||
| 18 اوت | 0 | |||
| 17 اوت | 0 | |||
| 16 اوت | 0 | |||
| 15 اوت | 0 | |||
| 14 اوت | 0 | |||
| 13 اوت | 0 | |||
| 12 اوت | 0 | |||
| 11 اوت | +1 | |||
| 10 اوت | +1 | |||
| 09 اوت | 0 | |||
| 08 اوت | +5 | |||
| 07 اوت | +1 | |||
| 06 اوت | 0 | |||
| 05 اوت | 0 | |||
| 04 اوت | 0 | |||
| 03 اوت | 0 | |||
| 02 اوت | 0 | |||
| 01 اوت | +2 |
پستهای کانال
Repost from | Rad Dev (JS) 🖤 |
تلگرام تو آپدیت جدیدش یه قابلیت اضافه کرده که چنلا میتونن یه Welcome Message تنظیم کنن که کاربرای جدید در حین جوین شدن ببینن.
میشه یه نمای کلی از محتوای چنل ارائه داد برای دسترسی بهترِ کاربرای جدید.
تلگرام برای بار چندم ثابت کرد که تولیدمحتوا جزو اولویتهاشه (لینک)
@Mern_stack_01
| 2 | Let's design Spotify!
Source | 45 |
| 3 | مطلب خوبی که راجع به شاردینگ خوندم. توضیحاتشون خوب بود.
https://alireza-haeri.github.io/BackendDeepDives/DataSharding.html | 48 |
| 4 | دقیقا در پی همین مشکلات بود که در دهه 1970 شخصی به نام ادگار کاد ( یکی از کارمندان شرکت IBM در آن زمان ) با انتشار مقاله ای، مدل رابطه ای را معرفی کرد.
ادگار کاد در مقاله با اشاره به روابط ریاضی این مدل را معرفی کرد.و پیشنهاد کرد که داده ها در قالب جداول مدیریت شوند.
چند سال بعد هم IBM از زبان SEQUEL ( SQL امروزی ) معرفی کرد.
اما حدودا یک دهه بعد شرکت اوراکل با مطالعه همان مقاله ها از RDBMS تجاری خود به نام Oracle Version 2 رو نمایی کرد.
شرکت IBM با اینکه مدل رابطهای و زبان SQL را اختراع کرده بود، در تبدیل آن به یک محصول تجاری برای فروش کند عمل کرد. دلیل اصلی این بود که IBM در آن زمان یک سیستم پایگاه داده بسیار سودآور (IMS) داشت و نمیخواست محصول جدید با فروش محصول قدیمیاش رقابت کند. | 49 |
| 5 | سرعت خواندن داده ها در این مدل بسیار بالاست. اما مشکلات اساسی هم داره.
مثلا فرض کنید بخواهید تمامی بیماران بالای 18 سال را دریافت کنید. در این حالت چون زبان گفتگویی با DBMS وجود نداره، شما باید خودون یک حلقه بنویسید و از بین بیماران آنهایی که مطابق شرط بودند را استخراج کنید.
یا اگر روزگاری یک شاخه دیگر ایجاد شود مثلا تراکنش ها، و بخواهید هر تراکنش را به کاربری نسبت دهید، یا باید کل اطلاعات کاربر را دوباره تکرار کنید (redundancy بالا ) یا از روش بهینه تر که شامل ذخیره آدرس کل مسیر به عنوان یک شاخه جدید.
یا اگر روزی تصمیم بگیرید که یک شاخه جدید به شاخه های بالایی اضافه کنید چه؟!
مثلا تا الان به این شکل بود :
hospital/wards/icu/patients/1/name
اما در ادامه مجبور شوید که هر بیمار را زیر نظر یک پزشک قرار دهید. در این صورت شاخه جدید این میشود :
hospital/wards/icu/doctor/patients/1/name
در این صورت لازم است در پروژه، هرجایی که از این شاخه استفاده کرده اید را تغییر دهید!
همچنین داده های جدید را به شاخه جدید انتقال دهید! | 42 |
| 6 | نمایش نحوه کار مدل سلسه مراتبی به صورت بصری. | 35 |
| 7 | ببیند در مدل سلسه مراتبی دیگه خبری از جداول یا کالکشن و کلید خارجی و join و ... نیست!
یک دیتابیس میاد بالا و تمامی داده ها به صورت شاخه ای ذخیره میشن.
مثلا فرض کنید یک بیمارستان داریم. این بیمارستان ما شامل بیمار و اطلاعاتش ، و بخش ( مثلا icu یا اتاق زایمان ) هست فقط!
خب حالا میخوایم یک بیمار با نایم مایک رو به بخش icu اضافه کنیم.
در مدل سلسه مراتبی ما یک دیتابیس یا شاخه تعریف میکنیم به نام hospital . و بعد یک شاخه دیگه به نام wards (بخش ها) و یک شاخه دیگه به نام icu و بعد یک شاخه دیگه به نام patients (بیماران)
تا الان مسیر شد این :
hospital/wards/icu/patients
خب حالا میخوایم بیمار رو اضافه کنیم.
اینجا خودمون به طور دستی یک شماره unique تعریف میکنیم که از دیگر بیماران جدا شه. و بعد اطلاعاتش رو دوباره به صورت شاخه ای تعریف میکنیم!
به این شکل:
hospital/wards/icu/patients/1/name -> Mike
hospital/wards/icu/patients/1/age -> 68
hospital/wards/icu/patients/1/gender -> male
چقدر جالب! برای کسانی که به مدل های رابطه ای عادت کردند، کار کردن با چنین مدلی برای اولین بار میتونه خیلی جالب باشه!
نمونه کد با NodeJS و ذخیره داده ها با YottaDB :
db.set({global:"Hospital",subscripts:['General','Wards','Maternity','Patients','1','name'] , data:'Mike'})
db.set({global:"Hospital",subscripts:['General','Wards','Maternity','Patients','1','age'] , data:'68'})
db.set({global:"Hospital",subscripts:['General','Wards','Maternity','Patients','1','gender'] , data:'male'})
و حالا برای خواندن این داده ها :
const name = db.get({
global: 'Hospital',
subscripts: ['General', 'Wards', 'Maternity', 'Patients', '1','name']
}).data;
const age = db.get({
global: 'Hospital',
subscripts: ['General', 'Wards', 'Maternity', 'Patients', '1','age']
}).data;
const gender = db.get({
global: 'Hospital',
subscripts: ['General', 'Wards', 'Maternity', 'Patients', '1','gender']
}).data;
console.log("patient:", name , age , gender);
//Result -> console.log("patient:", name , age , gender); | 38 |
| 8 | خب برای امتحان این مدل سلسه مراتبی تصمیم گرفتم که از خود ims استفاده کنم.
اما متوجه شدم نیازمند سیستم عامل اختصاصی شرکت IBM هستش و راه رسیدن بهش، میلیون دلاریه. یکم گرون بود نصرفید.
در نتیجه تصمیم گرفتم از یک DBMS دیگه که از همین مدل ساپورت کنه استفاده کنم و رسیدم به YottaDB .
ایشون هم از مدل سلسه مراتبی پیروی میکنه با این تفاوت که اوپن سورس و رایگانه. سیستم عامل اختصاصی هم نمیخواد و پکیج npm هم با نام nodem داره.
اما خب روی ویندوز ران نمیشه و نیازمند یک توزیع لینوکسی است 🤦♂️
سیستم عامل xUbuntu که نسخه لایت ubuntu هستش رو به صورت مجازی آوردم بالا، برنامه های لازم از جمله vsCode و node و ... رو نصب کردم.
و اولین داده ام رو با این مدل ذخیره کردم!
حالا بریم بپردازم که این مدل سلسه مراتبی واقعا چطوری کار میکنه و تفاوتش با مدل رابطه و دیگر مدل ها چیست؟ | 36 |
| 9 | برام سوال شده بود که در گذشته افراد چگونه بدون DBMS ها داده های خودشون رو مدیریت میکردند ؟
و رفتم کلی راجع بهشون خوندم. خدارو شاکرم که در این عصر با این تکنولوژی ها کار میکنم وگرنه اگر این abstraction ها نبودند برنامه نویسی خیلی سخت بود!
در گذشته ( دهه های 1950-1960 ) اصلا نه دیتا مدل خاصی بوده نه DBMS خاصی. برنامه نویس ها مجبور بودند که خودشون داده های برنامه رو از طریق برنامه نویسی مدیریت کنند!
مثلا فایل هایی ایجاد میکردند و داده ها رو در هر ردیف اضافه میکردند. برای آپدیت داده باز باید خودشون کد مینوشتند که داده رو آپدیت کنه. یا برای یافتن داده هم همینطور. کلا مدیریت داده با کد اجین بود.
کمی جلوتر شرکتی به نام IBM از DBMS خود با مدل hierarchical (سلسه مراتبی) و نام ims رونمایی کرد. این DBMS برای مدیریت داده های پروژه آپولو ناسا بود.
مدیریت داده ها خیلی بهتر شد ولی همچنان برنامه نویس ها باید با برنامه نویسی و نوشتن کد داده ها رو مدیریت میکردند.
همچنین این مدل ضعف های داشت که در پی آن دیتا مدل network بهینه شد تا ضعف های مدل سلسه مراتبی را خصوصا در زمینه ارتباط چند به چند (Many-to-Many) بر طرف کند.
خیلی برام جالب شد که با این مدل سلسه مراتبی کار کنم و ببینم که واقعا چیه!
در ادامه سعی میکنیم که سیستم یک بیمارستان را با استفاده از دو مدل سلسه مراتبی و رابطه ای پیاده سازی کنیم. | 46 |
| 10 | واقعا دیگه دوست ندارم حتی نیم نگاهی به مطالبی که جدیدا در سوشال مدیا هایی همچون ( تلگرام، لینکدین و x ) پست میکنند، بیندازم!
همه مطالب آمپولی شدن | 76 |
| 11 | چند وقتیه که در حال مطالعه و لول آپ هستم و اینجا وقت نکردم باشم.
اما بزودی یک پست مفید از یکی از مباحث (که شامل کلی مباحث دیگر میشود) و راجع بهش مطالعه عمیق داشتم اینجا میذارم. | 75 |
| 12 | طی یک اشتباه متوجه شدم ریپو پرایوت بود.
الان پابلیکه و اگر دوست داشتید میتونید سورس رو هم بررسی کنید.
کلی رجکس نوشتم پاش.
توضیحات و فیچر ها هم کاملا در README ذکر شده دیگه من اینجا اضافه گویی نمیکنم.
اگر دوست داشتید با یک استار خوشحالمون کنید ❤️ | 150 |
| 13 | کاربرد های خیلی متنوعی میتونه داشته باشه.
مثلا یکیش ولیدیشن آدرس ها، اگر آدرس کاربر رو گرفتید ولی میخواستین یکی از فیلد ها مثلا شهر رو حتما وارد کرده باشه، چک کنید.
یا حتی برای ذخیره ساختار یافته آدرس در دیتابیس.
ربات های پیج های اینستاگرامی که آدرس کاربر رو به طور متنی میگیرن.
شرکت هایی که آدرس های مشتریانشون رو بدون ساختار در فایل های excel ذخیره کردند.
در تمامی موقعیت ها کال کردن یک فانکشن، خروجی نرمالایز شده و ساختار یافته تحویل میگیرین.
بخش شهر و استان هم با داده های واقعی ایران، یعنی تمامی استان ها و شهر هاشون بررسی میشه. | 229 |
| 14 | یه پکیج npm نوشتم که آدرسهای فارسی رو به دادهی ساختاریافته تبدیل میکنه.
ورودی:
فارس شیراز خیابان زند کوچه لاله پ ۱۲ واحد ۳ طبقه ۲
خروجی:
{
province: "فارس",
city: "شیراز",
street: "زند",
alley: "لاله",
number: "12",
unit: "3",
floor: "2"
}
آدرس فارسی متن آزاده. نه ترتیب ثابتی داره، نه املای ثابتی. «خ» و «خیابون» و «خیابان» یکیاند «۱۲» و «١٢» و «12» یکیاند، «ولیعصر» و «ولی عصر» و «ولیعصر» هم همینطور. پکیج همه اینا رو نرمال میکنه و بعد فیلد ها رو در میاره.
اگه شهر رو پیدا کنه ولی استان تو متن نباشه، استان رو خودش پر میکنه.
بدون وابستگی، تایپاسکریپت، تستشده روی ۲۰۰+ آدرس برچسبخورده.
npm i persian-address-parser
github.com/rezadev8/persian-address-parser | 227 |
| 15 | 💰 سرویس ولت کلادفلیر رونمایی شد!
کلادفلر یه سرویس پرداخت و کیف پول برای ایجنتهای AI معرفی کرده که بتونن خودشون API و محتوا بخرن.
با سقف هزینه و محدودیتهایی که شما تعیین میکنید.
از همین الان میتونین یوزنیم ولت خودتونو رزرو کنین.
اسمای خوب زود پر میشه پس هر چه سریعتر مال خودتونو بگیرین👇
https://cloudflare.pay
#معرفی_سایت #معرفی_سرویس #کلادفلر #هوش_مصنوعی #عامل_هوشمند #رابط_برنامه_نویسی_کاربردی | 95 |
| 16 | جدیدا خیلی با AI Agent ها درگیر بودم.
برای همین در نظرم داشتم اینو کاملا بدون AI بزنم و تقریبا همینطور هم شد.
از RegEx خیلی استفاده کردم و همه رو خودم نوشتم.
البته بگی نگی برای بهبود یه جاهایی استفاده کردم تا یه وقت گوف خیلی بزرگی نداده باشم 😁
بخش تست هم که دیگه قطعا باید دست AI رو میبوسید چون خیلی چالشی نبود که براش وقت بذارم. | 98 |
| 17 | یه پروژه کوچک و جمع و جور اما به نسبت کاربردی زدم که فردا باهاتون به صورت اوپن سورس به اشتراک میذارم. | 96 |
| 18 | 📱 مهندسی نرمافزار در عصر هوش مصنوعی
🎙سخنران:
👤علیرضا ابراهیمخانی
🔹بنیانگذار استارتاپ Parseh | پرسه
🔹مهندس داده در DataChef (هلند)
🔹سابقه فعالیت بهعنوان مهندس ارشد نرمافزار در اسنپ و علیبابا
🔹مشاور فنی دکتر پِی، دیجیکالا و SegalSoft
🔹مشارکتکننده اصلی فریمورک Angular
⌛️زمان برگزاری: چهارشنبه ۱۴ مرداد ماه، ساعت ۱۸
💻به صورت مجازی در بستر اسکایروم
💠لینک شرکت در جلسه در کانال انجمن علمی برنامهنویسی شبکه نخبگان ایران منتشر خواهد شد. برای شرکت در نشست، در کانال عضو شوید.
🔗لینک ثبتنام
💰حضور در جلسه برای تمامی علاقمندان، آزاد و رایگان است.
👨💻در کانال انجمن علمی برنامهنویسی با ما همراه باشید…
| @Programming_Association | | 103 |
| 19 | نظرات کاربران سایت فارکس فکتوری بخش اخبار.
که چندین ماهه به دلیل جنگ ایران و آمریکا بسیاری از اخبار مربوط به همین جنگ، و ایران است.
بسیاری از افراد معتقدند که این جنگ بیش از حد طولانی و خسته کننده شده است.
همچنین، برخی نیز معتقد هستند که علت طولانی شدن این جنگ نوسان گیری از بازار است.
پ.ن: صدای افراد خارجی که حتی مستقیما در جنگ نیستند هم در اومده.
زندگی ما ایرانی ها از لحاظ اقتصادی همیشه در فشار بوده، این جنگ فشار رو چندین برابر کرده. | 129 |
| 20 | به عنوان یک Engineering Manager چطور وقت و انرژی خودمون رو بودجه بندی کنیم؟
این مطلب رو من خیلی دوستش داشتم چون می اومد با مثال و توضیح میگفت که اگر اینجا اینقدر وقت بگذاریم نتیجه چی میشه و خیلی کمک میکرد به درک اتفاقاتی که در لایه مدیریت میفته و تاثیرش روی تیم.
https://www.manager.dev/newsletter/the-engineering-manager-s-attention-budget | 68 |
