Python BackendHub
این چیه دیگه؟! ببینید وقتی داریم از e2e encryption صحبت میکنیم همچین فلویی داریم من فرستنده یک private key و public key دارم. شما هم همینطور. من برای اینکه پیامی به شما بفرستم که کسی جز شما نخونه باید با پابلیک کی شما پیام رو encrypt کنم. بعدش با private…
برای اینکه بهتر متوجه شید این عکس از repsonse همون api ای هست که تیم یاسر زده.
الان با وجود sender_public_key میشه گفت واقعا ناشناسه؟
@PyBackendHub
الان با وجود sender_public_key میشه گفت واقعا ناشناسه؟
@PyBackendHub
👍15👎1
Python BackendHub
منیت یک بخش بزرگیش فرهنگه اجتماعی و قانون گذاری هست. شما هرچی برنامت رو ایمن تر کنی UX بدتری خواهی داشت. پس این درست نیست که بگم من الان یک برنامه خیلی امن و خفن میسازم و همه قراره حال کنند. ترید آفه.
این پارگراف هم باز کنم و برم بخوابم :))
اینکه میگم فرهنگه منظورم اینه که من باید بدونم که نباید aws secret key شرکتو رو slack بفرستم برای همکارم. این قسمت فرهنگشه. که باید آکاه باشم دیتایی که بره تو نت دیگه خدا میدونه چه بلایی سرش میاد.
اینکه قفل و زنجیر بزنی به اپلیکیشنت باعث امنیت بیشتر نمیشه. اپلیکیشنت اگه آسیب پذیری نداشته باشه مشکلی نداره. طبیعتا همه اپلیکیشن ها ضعف امنیتی دارن و اشکالیم نداره. یک ترید آفه اون.
بخشیش هم به قانون گذاری برمیگرده که گفتم. الان از ۱۰ تا سایت معتبر ایرانی واقعا ۳-۴ تاشون term of service دارن. سایت دیدم نماد الکترونیکی داره ولی term of service نداره. یعنی یک بازرس اومده سایتو دیده ولی اینو چک نکرده؟! اگه ربات تلگرام ناشناسی که شما استفاده میکردی term of use داشت و میگفت دیتاتون تو سرور من همیشه ذخیره میمونه, اون موقع هیچ مشکل قانونی نداشت. اگه هم اینکارو میکرد قطعا ۹۹درصد مردم نمیخوندنش. و هیچ یوزری انتظار نداره که دیتاشو پاک کنه. من تو هیچ اپی ندیدم وقتی ایران زندگی میکردم که این آپشن دیلیت کردن دیتا رو داشته باشه. پس بخشیش هم برمیگرده به فرهنگ و فقط قانون گذاری نیست. توقع کاربر کمه. تو آلمان دیدم مردم خیلی به این موارد اهمیت میدن.
و در نهایت اینکه دیتا لو رفته چیه؟ اگه دو تا عکس و فیلم باشه, نباید فرهنگمون اجازه بده که کسیو مسخره کنیم یا بذاریم زندگیش تموم شه بخاطر همچین چیزی. دیگه نسل جدید نباید اینقدر پوسیده فکر کنه. زندگی خصوصی آدما به خودشون مربوطه. متاسفانه مثال خلافش تو جامعه ما میشه یوتیوبری به اسم مدگل که کامنت های خیلی بدی میبنیم راجبش همه جا 🤦♂️
@PyBackendHub
اینکه میگم فرهنگه منظورم اینه که من باید بدونم که نباید aws secret key شرکتو رو slack بفرستم برای همکارم. این قسمت فرهنگشه. که باید آکاه باشم دیتایی که بره تو نت دیگه خدا میدونه چه بلایی سرش میاد.
اینکه قفل و زنجیر بزنی به اپلیکیشنت باعث امنیت بیشتر نمیشه. اپلیکیشنت اگه آسیب پذیری نداشته باشه مشکلی نداره. طبیعتا همه اپلیکیشن ها ضعف امنیتی دارن و اشکالیم نداره. یک ترید آفه اون.
بخشیش هم به قانون گذاری برمیگرده که گفتم. الان از ۱۰ تا سایت معتبر ایرانی واقعا ۳-۴ تاشون term of service دارن. سایت دیدم نماد الکترونیکی داره ولی term of service نداره. یعنی یک بازرس اومده سایتو دیده ولی اینو چک نکرده؟! اگه ربات تلگرام ناشناسی که شما استفاده میکردی term of use داشت و میگفت دیتاتون تو سرور من همیشه ذخیره میمونه, اون موقع هیچ مشکل قانونی نداشت. اگه هم اینکارو میکرد قطعا ۹۹درصد مردم نمیخوندنش. و هیچ یوزری انتظار نداره که دیتاشو پاک کنه. من تو هیچ اپی ندیدم وقتی ایران زندگی میکردم که این آپشن دیلیت کردن دیتا رو داشته باشه. پس بخشیش هم برمیگرده به فرهنگ و فقط قانون گذاری نیست. توقع کاربر کمه. تو آلمان دیدم مردم خیلی به این موارد اهمیت میدن.
و در نهایت اینکه دیتا لو رفته چیه؟ اگه دو تا عکس و فیلم باشه, نباید فرهنگمون اجازه بده که کسیو مسخره کنیم یا بذاریم زندگیش تموم شه بخاطر همچین چیزی. دیگه نسل جدید نباید اینقدر پوسیده فکر کنه. زندگی خصوصی آدما به خودشون مربوطه. متاسفانه مثال خلافش تو جامعه ما میشه یوتیوبری به اسم مدگل که کامنت های خیلی بدی میبنیم راجبش همه جا 🤦♂️
@PyBackendHub
👍14
یکی از دوستانی امروز یادم انداخت به یه لایبری قدیمی که نوشته بودم. این لایبری یه HTTP client هست که میتونه سایتهایی که زیر پوشش Cloudflare هستن و سیستم رباتیابشون فعاله رو کراول کنه. تاحالا در موردش صحبت نکرده بودم، ولی گفتم اینجا یه توضیحی بدم.
لینک گیتهابش اینجاست با httpx کاملاً سازگاره، یعنی اگه از httpx استفاده میکردید، با تغییر import میتونید به راحتی ازش استفاده کنید.
مشکل چی بود؟ سایتهایی که از Cloudflare به عنوان reverse proxy استفاده میکنن، معمولاً از یه مکانیزم تشخیص ربات استفاده میکنن که به TLS Fingerprint متکیه. حالا TLS Fingerprint چیه؟ وقتی شما به یه سایت وصل میشید، اولین چیزی که رد و بدل میشه، یه پیام به اسم Client Hello هست. این پیام اطلاعات اولیهای رو درباره کلاینت شما به سرور میده، مثل نسخه TLS که پشتیبانی میکنید و یه لیست به اسم cipher suite.
توضیح Cipher suite: در واقع مجموعهای از الگوریتمهای رمزنگاری هست که کلاینت و سرور میتونن برای برقراری یه ارتباط امن استفاده کنن. هر مرورگر یا کلاینت یه لیست مشخص از cipher suite داره که ترتیبش هم خاص همون کلاینت هست. مثلاً مرورگر کروم یه لیست مشخص داره، مرورگر فایرفاکس یه لیست دیگه، و مثلاً requests پایتون هم یه لیست کاملاً متفاوت.
کلادفلیر چطور متوجه میشه شما مرورگر نیستید؟ اون میاد این TLS Fingerprint، یعنی ترکیب نسخه TLS و ترتیب cipher suiteها، رو با user-agent شما مقایسه میکنه. اگه این دو تا با هم نخونن، مثلاً user-agent شما میگه مرورگر کروم هستید ولی cipher suiteها میگن یه اسکریپت پایتونید، Cloudflare متوجه میشه که شما مرورگر نیستید و درخواست رو بلاک میکنه.
کله سناریویی که گفتم اینجا داره اتفاق میفته تو لایبری من که کلا ۱۰ خط کده.
@PyBackendHub
لینک گیتهابش اینجاست با httpx کاملاً سازگاره، یعنی اگه از httpx استفاده میکردید، با تغییر import میتونید به راحتی ازش استفاده کنید.
مشکل چی بود؟ سایتهایی که از Cloudflare به عنوان reverse proxy استفاده میکنن، معمولاً از یه مکانیزم تشخیص ربات استفاده میکنن که به TLS Fingerprint متکیه. حالا TLS Fingerprint چیه؟ وقتی شما به یه سایت وصل میشید، اولین چیزی که رد و بدل میشه، یه پیام به اسم Client Hello هست. این پیام اطلاعات اولیهای رو درباره کلاینت شما به سرور میده، مثل نسخه TLS که پشتیبانی میکنید و یه لیست به اسم cipher suite.
توضیح Cipher suite: در واقع مجموعهای از الگوریتمهای رمزنگاری هست که کلاینت و سرور میتونن برای برقراری یه ارتباط امن استفاده کنن. هر مرورگر یا کلاینت یه لیست مشخص از cipher suite داره که ترتیبش هم خاص همون کلاینت هست. مثلاً مرورگر کروم یه لیست مشخص داره، مرورگر فایرفاکس یه لیست دیگه، و مثلاً requests پایتون هم یه لیست کاملاً متفاوت.
کلادفلیر چطور متوجه میشه شما مرورگر نیستید؟ اون میاد این TLS Fingerprint، یعنی ترکیب نسخه TLS و ترتیب cipher suiteها، رو با user-agent شما مقایسه میکنه. اگه این دو تا با هم نخونن، مثلاً user-agent شما میگه مرورگر کروم هستید ولی cipher suiteها میگن یه اسکریپت پایتونید، Cloudflare متوجه میشه که شما مرورگر نیستید و درخواست رو بلاک میکنه.
کله سناریویی که گفتم اینجا داره اتفاق میفته تو لایبری من که کلا ۱۰ خط کده.
@PyBackendHub
GitHub
GitHub - ManiMozaffar/cfcrawler: Cloudflare scraper and cralwer written in Async, In-place library for HTTPX. Crawl website that…
Cloudflare scraper and cralwer written in Async, In-place library for HTTPX. Crawl website that has cloudflare enabled, easier than ever! - ManiMozaffar/cfcrawler
👍35🔥4🥰3⚡1
Python BackendHub
یکی از دوستانی امروز یادم انداخت به یه لایبری قدیمی که نوشته بودم. این لایبری یه HTTP client هست که میتونه سایتهایی که زیر پوشش Cloudflare هستن و سیستم رباتیابشون فعاله رو کراول کنه. تاحالا در موردش صحبت نکرده بودم، ولی گفتم اینجا یه توضیحی بدم. لینک گیتهابش…
اگه این پست و لایبری براتون مفید بود، خوشحال میشم اگه بهش استار بدید. این کار به من انگیزه بیشتری برای توسعه و بهبود فریمورک های اوپن سورس میده. از حمایتتون خیلی ممنونم 🙂 🙏
@PyBackendHub
@PyBackendHub
🥰21👍7
Forwarded from Yasha
image_2024-08-22_18-05-43.png
166.9 KB
Yasha
image_2024-08-22_18-05-43.png
یک شفاف سازی: منظوراز سرور تو این schema سرور خوده ربات ناشناسه.
این بهترین نسخه ای هست که میشه با تلگرام اپ نوشت، هویت شما با هرپیام تغییر میکنه بنابراین ناشناسه.
ولی هنوز e2e نیست چون سکرت کی ها همه تو کلاد استوریج تلگرام ذخیره میشن.
نکته دیگه هم اینه که من فرض رو براین گذاشتم که دیتایی که یک اپلیکیشن رو کلاد تلگرام ذخیره میکنه، قابل دریافت مجدد نیست توسط خوده اپلیکیشن. اگه این فرضیه درست نباشه، کلا این قضیه شدنی نیست رو تلگرام.
@PyBackendHub
این بهترین نسخه ای هست که میشه با تلگرام اپ نوشت، هویت شما با هرپیام تغییر میکنه بنابراین ناشناسه.
ولی هنوز e2e نیست چون سکرت کی ها همه تو کلاد استوریج تلگرام ذخیره میشن.
نکته دیگه هم اینه که من فرض رو براین گذاشتم که دیتایی که یک اپلیکیشن رو کلاد تلگرام ذخیره میکنه، قابل دریافت مجدد نیست توسط خوده اپلیکیشن. اگه این فرضیه درست نباشه، کلا این قضیه شدنی نیست رو تلگرام.
@PyBackendHub
👍5❤1🤣1
Python BackendHub
یکی از دوستانی امروز یادم انداخت به یه لایبری قدیمی که نوشته بودم. این لایبری یه HTTP client هست که میتونه سایتهایی که زیر پوشش Cloudflare هستن و سیستم رباتیابشون فعاله رو کراول کنه. تاحالا در موردش صحبت نکرده بودم، ولی گفتم اینجا یه توضیحی بدم. لینک گیتهابش…
چند نفر تو پیوی ازم پرسیدن چطور به این نتیجه رسیدم و این لایبری رو نوشتم. گفتم شاید بهتر باشه تو کانال در موردش صحبت کنم چون نکته مهمیه که همیشه به درد میخوره.
ببینید من نه مهندس معکوسم، نه تو امنیت کار کردم. یکی از پروژههایی که داشتم روی کراولینگ بود. یه روز دیدم سایتی که کراول میکردم همه درخواستهارو بلاک میکنه. یه درخواست با curl زدم، نتیجه رو ذخیره کردم و دیدم. فهمیدم مشکل چالش Cloudflare هست. جالبه که با مرورگر وقتی همون درخواست رو میزدم، سریع جواب میگرفتم.
من قبلاً کتابی در مورد HTTP و TLS خونده بودم و میدونستم معجزهای در کار نیست. وقتی درخواست میزنی، سرور جوابی میده. پس یه چیزی تو curl داره اشتباه میشه که تو مرورگر نمیشه. درخواست مرورگر رو دقیقاً با curl کپی کردم، ولی بازم فیل شد! ترافیک سیستم رو پروکسی کردم، یک بار همون curl رو زدم و یک بار هم با مرورگر. مقایسهشون کردم و دیدم تفاوت اصلی توی Hello Client هست. همینو تو پایتون پیاده کردم و بایپس شد.
کل این پروسه ۲۰ دقیقه طول کشید. یه سرچ کردم ببینم کلاینت پایتونی برای Cloudflare هست یا نه. دو تا پروژه پیدا کردم که نه کار میکردن نه توضیح داده بودن چطور این کارو کردن. حتی اگه کارم میکردن، استفاده نمیکردم. هیچوقت لایبری که نمیدونی چیکار میکنه رو تو پروداکشن استفاده نکن. بعداً سورس کد یکیشونو دیدم که وسطش یه کار عجیب میکرد که باعث مموری لیک میشد!
نکات مهم این داستان:
۱. دانشی که بهصورت تئوری دارید، زود یادتون میره. وقتی ازش استفاده عملی کنید، بیشتر تو ذهنتون میمونه. استفاده عملی از یک نیاز میاد. نه اینکه یک کتاب بخونید ببینید کد هاشو کپی پیست کنید.
۲. همیشه تحقیق کنید و سولوشنی که پیاده کردید رو بفهمید. من اگه اون لایبری رو استفاده میکردم، مموری لیک میخوردم و این لایبری هم نوشته نمیشد.
۳. برای یادگیری از GPT استفاده نکنید. تئوری یاد بگیرید بهتر از اینه که از GPT بپرسید. چون GPT تئوری رو ناقص میگه و نمیتونه دقیقاً مشکل رو تشخیص بده. همین الان هم این سوال رو ازش پرسیدم با بهترین prompt ای که میشد داد. و جوابشو ببینید خودتون
۴. با تمرین و تکرار مهارتتون بالا میره. این پروسه ۲۰ دقیقه طول کشید چون بارها ترافیک سیستم عاملمو پروکسی کرده بودم و میدونستم Network Tab مرورگر خیلی سطح بالاست و بعضی HTTP Headerها رو نشون نمیده. هیچ مجیکی وجود نداره، تمرینه که دستتو سریع میکنه. شاید یک نفری که ندونه اینارو و نکرده این تسک چند هفتش میشد.
@PyBackendHub
ببینید من نه مهندس معکوسم، نه تو امنیت کار کردم. یکی از پروژههایی که داشتم روی کراولینگ بود. یه روز دیدم سایتی که کراول میکردم همه درخواستهارو بلاک میکنه. یه درخواست با curl زدم، نتیجه رو ذخیره کردم و دیدم. فهمیدم مشکل چالش Cloudflare هست. جالبه که با مرورگر وقتی همون درخواست رو میزدم، سریع جواب میگرفتم.
من قبلاً کتابی در مورد HTTP و TLS خونده بودم و میدونستم معجزهای در کار نیست. وقتی درخواست میزنی، سرور جوابی میده. پس یه چیزی تو curl داره اشتباه میشه که تو مرورگر نمیشه. درخواست مرورگر رو دقیقاً با curl کپی کردم، ولی بازم فیل شد! ترافیک سیستم رو پروکسی کردم، یک بار همون curl رو زدم و یک بار هم با مرورگر. مقایسهشون کردم و دیدم تفاوت اصلی توی Hello Client هست. همینو تو پایتون پیاده کردم و بایپس شد.
کل این پروسه ۲۰ دقیقه طول کشید. یه سرچ کردم ببینم کلاینت پایتونی برای Cloudflare هست یا نه. دو تا پروژه پیدا کردم که نه کار میکردن نه توضیح داده بودن چطور این کارو کردن. حتی اگه کارم میکردن، استفاده نمیکردم. هیچوقت لایبری که نمیدونی چیکار میکنه رو تو پروداکشن استفاده نکن. بعداً سورس کد یکیشونو دیدم که وسطش یه کار عجیب میکرد که باعث مموری لیک میشد!
نکات مهم این داستان:
۱. دانشی که بهصورت تئوری دارید، زود یادتون میره. وقتی ازش استفاده عملی کنید، بیشتر تو ذهنتون میمونه. استفاده عملی از یک نیاز میاد. نه اینکه یک کتاب بخونید ببینید کد هاشو کپی پیست کنید.
۲. همیشه تحقیق کنید و سولوشنی که پیاده کردید رو بفهمید. من اگه اون لایبری رو استفاده میکردم، مموری لیک میخوردم و این لایبری هم نوشته نمیشد.
۳. برای یادگیری از GPT استفاده نکنید. تئوری یاد بگیرید بهتر از اینه که از GPT بپرسید. چون GPT تئوری رو ناقص میگه و نمیتونه دقیقاً مشکل رو تشخیص بده. همین الان هم این سوال رو ازش پرسیدم با بهترین prompt ای که میشد داد. و جوابشو ببینید خودتون
۴. با تمرین و تکرار مهارتتون بالا میره. این پروسه ۲۰ دقیقه طول کشید چون بارها ترافیک سیستم عاملمو پروکسی کرده بودم و میدونستم Network Tab مرورگر خیلی سطح بالاست و بعضی HTTP Headerها رو نشون نمیده. هیچ مجیکی وجود نداره، تمرینه که دستتو سریع میکنه. شاید یک نفری که ندونه اینارو و نکرده این تسک چند هفتش میشد.
@PyBackendHub
👌25👍5❤3
Python BackendHub
به دلیل سرما خوردگی لایو به یک شنبه یک هفته بعد موکول خواهد شد (۲۵ ام August). متاسفانه نتونستم ویدیو آخر که راجب ماگریشن نویسی با alembic هست رو ظبط کنم. ایشالا اونم طی این آخر هفته انجام میدم وقتی بهتر شدم :)
راجب لایو که قراره بذاریم مجددا متاسفانه مجبورم که موکولش کنم به هفته آینده. چون هنوز ویدیو alembic رو ندادم. مریضیم کرونا بود ۲ هفته طول کشید تا کامل خوب شم 😅 (الان خوبم دوستان نگران نباشید)
امروز یا فردا ویدیو alembic هم آپلود میشه آخرین ویدیو دوره مقدماتی SQLAlchemy
@PyBackendHub
امروز یا فردا ویدیو alembic هم آپلود میشه آخرین ویدیو دوره مقدماتی SQLAlchemy
@PyBackendHub
❤23😢1🤡1
Forwarded from Sadra Codes
آقا ساپورت کنید ببینم یک پروداکتهانت رو میگیریم یا نه. 😅
تقریبا ۱۵ ساعت مونده و سومیم. با نفر اول تقریبا ۷۰ تا vote فاصله داریم.
https://www.producthunt.com/posts/hey-7fed5187-9b92-4ee8-9ce5-e08d5bc63d15
تقریبا ۱۵ ساعت مونده و سومیم. با نفر اول تقریبا ۷۰ تا vote فاصله داریم.
https://www.producthunt.com/posts/hey-7fed5187-9b92-4ee8-9ce5-e08d5bc63d15
❤11🤡3👍2
آیا میدونستید از هر ۵۰ تا رزومه فقط یکیش مصاحبه میگیره؟ آیا میدونستید که تجربه و دانش شما لزوماً به معنای رزومهی بهتر نیست؟ و اینکه خیلی از مهندسای نرمافزار با تغییر رزومشون تونستن درآمدشون رو چند برابر کنن؟
خب، من یه راهحل دارم براتون! چند وقت پیش من یه ریپو داشتم که الان ۳۰۰ ستاره گرفته و توش به تکنیکهای نوشتن رزومه پرداخته بود. حالا وقت گذاشتم و اون رو به Mkdocs تبدیل کردم تا خوندنش راحتتر بشه. کلی قسمت رو آپدیت کردم، مثالهای بیشتر و نمودار و رفرنسهای جدید اضافه کردم، و مطالب رو خیلی مرتبتر کردم.
لینک ریپو
لینک داکیومنشن جدید
اگه این پست و لایبری براتون مفید بود، خوشحال میشم اگه بهش استار بدید. این کار به من انگیزه بیشتری برای توسعه و بهبود فریمورک های اوپن سورس میده. از حمایتتون خیلی ممنونم 🙂 🙏
@PyBackendHub
خب، من یه راهحل دارم براتون! چند وقت پیش من یه ریپو داشتم که الان ۳۰۰ ستاره گرفته و توش به تکنیکهای نوشتن رزومه پرداخته بود. حالا وقت گذاشتم و اون رو به Mkdocs تبدیل کردم تا خوندنش راحتتر بشه. کلی قسمت رو آپدیت کردم، مثالهای بیشتر و نمودار و رفرنسهای جدید اضافه کردم، و مطالب رو خیلی مرتبتر کردم.
لینک ریپو
لینک داکیومنشن جدید
اگه این پست و لایبری براتون مفید بود، خوشحال میشم اگه بهش استار بدید. این کار به من انگیزه بیشتری برای توسعه و بهبود فریمورک های اوپن سورس میده. از حمایتتون خیلی ممنونم 🙂 🙏
@PyBackendHub
❤58👍10🔥3
Forwarded from Ninja Learn | نینجا لرن (Mohammad)
دوره DRF بالاخره منتشر شد 🥳
توی این دوره از مبانی شروع میکنیم و قدم به قدم وارد دنیای APIهای پیشرفته میشیم، مفاهیمی مثل Serialization، Authentication، Viewsets و بسیاری دیگه رو بهصورت کاربردی یاد میگیری. هر جلسه با دقت و وسواس طراحی شده تا مطمئن بشیم که نه تنها مفاهیم رو میفهمی، بلکه آمادهای اونها رو توی پروژههای واقعیات پیادهسازی کنی. 💻🔗
https://youtube.com/playlist?list=PLq3tK5gKk3-11_jwdZ_yB8iqdS1q0OfXS&si=RnNUGYgOtN9U018R
@ninja_learn_ir
توی این دوره از مبانی شروع میکنیم و قدم به قدم وارد دنیای APIهای پیشرفته میشیم، مفاهیمی مثل Serialization، Authentication، Viewsets و بسیاری دیگه رو بهصورت کاربردی یاد میگیری. هر جلسه با دقت و وسواس طراحی شده تا مطمئن بشیم که نه تنها مفاهیم رو میفهمی، بلکه آمادهای اونها رو توی پروژههای واقعیات پیادهسازی کنی. 💻🔗
https://youtube.com/playlist?list=PLq3tK5gKk3-11_jwdZ_yB8iqdS1q0OfXS&si=RnNUGYgOtN9U018R
YouTube
دوره اموزش مقدماتی DRF 🚀
این پلیلیست کاملترین راهنمای Django Rest Framework (DRF) هست که هر توسعهدهنده وب باید اون رو داشته باشه. 🚀 از مبانی شروع میکنیم و قدم به قدم وارد دنیای A...
🔥9👍7👎2🤔1
Python BackendHub
آیا میدونستید از هر ۵۰ تا رزومه فقط یکیش مصاحبه میگیره؟ آیا میدونستید که تجربه و دانش شما لزوماً به معنای رزومهی بهتر نیست؟ و اینکه خیلی از مهندسای نرمافزار با تغییر رزومشون تونستن درآمدشون رو چند برابر کنن؟ خب، من یه راهحل دارم براتون! چند وقت پیش…
بچه ها زیر این پست ممنون میشم اگه خوندین فیدبک بدید راجب ریپو رزومه نویسی.
یک آپدیت بهتون بدم:
۱. یکی از دوستان داره رو فارسی سازی این رزومه کار میکنه. احتمالا نسخه فارسی هم داشته باشیم به زودی.
۲. یکی از دوستان فیدبک داد که این ریپو خیلی به درد بخور هست براش ولی هنوز خیلی رفع ابهام کیسی که اکثرا دارن رو نداره -> کسی که ۱ سابقه کاری داره یا اصلا نداره چطور میتونه یک رزومه خیلی خوب بنویسه و پر کنه رزومش رو.
۳. ایده خودم یک CLI tool هست که دو فیچر داشته باشه. یکی رزومه pdf رو بخونه و scan کنه و با یک LLM model بیاد به سکشن های مختلفش نمره بده و بگه چطور میتونی بهترش کنی. یکی اینکه متن رزومت رو مطابق با آگهی شغلی کاستومایز کنه که برای اون کسی که استخدام میکنه بیشتر تو چشم باشه. جفتش شدنیه. ولی سخته. مخصوصا دومی که write داره.
حالا ایده و فیدبک هاتون چیه؟
@PyBackendHub
یک آپدیت بهتون بدم:
۱. یکی از دوستان داره رو فارسی سازی این رزومه کار میکنه. احتمالا نسخه فارسی هم داشته باشیم به زودی.
۲. یکی از دوستان فیدبک داد که این ریپو خیلی به درد بخور هست براش ولی هنوز خیلی رفع ابهام کیسی که اکثرا دارن رو نداره -> کسی که ۱ سابقه کاری داره یا اصلا نداره چطور میتونه یک رزومه خیلی خوب بنویسه و پر کنه رزومش رو.
۳. ایده خودم یک CLI tool هست که دو فیچر داشته باشه. یکی رزومه pdf رو بخونه و scan کنه و با یک LLM model بیاد به سکشن های مختلفش نمره بده و بگه چطور میتونی بهترش کنی. یکی اینکه متن رزومت رو مطابق با آگهی شغلی کاستومایز کنه که برای اون کسی که استخدام میکنه بیشتر تو چشم باشه. جفتش شدنیه. ولی سخته. مخصوصا دومی که write داره.
حالا ایده و فیدبک هاتون چیه؟
@PyBackendHub
👍23
Python BackendHub
بچه ها زیر این پست ممنون میشم اگه خوندین فیدبک بدید راجب ریپو رزومه نویسی. یک آپدیت بهتون بدم: ۱. یکی از دوستان داره رو فارسی سازی این رزومه کار میکنه. احتمالا نسخه فارسی هم داشته باشیم به زودی. ۲. یکی از دوستان فیدبک داد که این ریپو خیلی به درد بخور هست…
اگه این پست لینکدین رو share کنید و یا لایک کنید کمک میکنید این ریپو دیده شه. اگه دوست داشتین تو لینکدین هم درخواست بدید کانتکت شیم.
در تلاشم که یکی از سایت های ادیتور CV رو باهاشون صحبت کنم که یک API بهم بدن برای read و write به رزومتون مستقیم. اینطوری دیگه درگیر parse کردن pdf و لاتکس و ... نمیشیم و یک UX خیلی خوب با کمترین دردسر رو به یوزر ها میدیم و بهترین خروجی. اگه پست زیاد دیده شه, باعث بیشتر شدن ستاره ها میشه. و تو این سناریو هم کمک میکنه که نظره این سرویس دهنده ها برای همکاری جلب بشه.
@PyBackendHub
در تلاشم که یکی از سایت های ادیتور CV رو باهاشون صحبت کنم که یک API بهم بدن برای read و write به رزومتون مستقیم. اینطوری دیگه درگیر parse کردن pdf و لاتکس و ... نمیشیم و یک UX خیلی خوب با کمترین دردسر رو به یوزر ها میدیم و بهترین خروجی. اگه پست زیاد دیده شه, باعث بیشتر شدن ستاره ها میشه. و تو این سناریو هم کمک میکنه که نظره این سرویس دهنده ها برای همکاری جلب بشه.
@PyBackendHub
Linkedin
Did you know that only 1 out of 50 resumes leads to an interview? And that your experience and skills don't always guarantee a…
Did you know that only 1 out of 50 resumes leads to an interview? And that your experience and skills don't always guarantee a better resume? A lot of software engineers have managed to multiply their income just by tweaking their resumes.
Well, I've got…
Well, I've got…
👍18❤🔥2👎1👏1
https://www.pulumi.com/
یک Iac هست که خیلی جذبش شدم برای یاد گرفتنش.
به جای اینکه yaml بنویسید تو یک زبون برنامه نویسی دلخواهتون مینویسید. و قابلیت های خیلی خوبی داره.
@PyBackendHub
یک Iac هست که خیلی جذبش شدم برای یاد گرفتنش.
به جای اینکه yaml بنویسید تو یک زبون برنامه نویسی دلخواهتون مینویسید. و قابلیت های خیلی خوبی داره.
@PyBackendHub
pulumi
Infrastructure as Code Platform with Agentic AI – Pulumi
Pulumi is an infrastructure management platform to automate through infrastructure as code, secure with secrets management, and manage infrastructure with AI.
👍7👎1
دیشب تو گروه بحث بود که من اینترن هستم و چیکار کنم که شغل پیدا کنم یا رزومهام بیشتر دیده بشه. تو پیوی هم خیلیا سوال میپرسن که چطور بدون تجربه کاری اولین شغلشون رو بگیرن. ببین، همه شرکتا دنبال کسی میگردن که واقعاً یک مهارت رو بلده. حالا شاید بگی من ۴ سال دانشگاه رفتم، ۱۰ تا پروژه تمرینی هم تو گیتهاب گذاشتم، پس چرا قبولم نمیکنن؟ ولی باید بدونی که تعریف "بلد بودن" اینجا متفاوته.
یه پروژه مثل فروشگاه اینترنتی شاید کمک کنه چیزای پایهای یاد بگیری، ولی نمیشه گفت واقعاً بلدی. چرا؟ چون یه نرمافزار ساده ساختی که خیلی پیچیده نیست، یه مشکلی رو حل نکردی، شاید فقط چندتا کد رو کپی پیست کردی. "بلد بودن" یعنی این که بتونی از دانشت بهصورت عملی استفاده کنی و یه مشکل واقعی رو حل کنی، اونم جوری که بفهمی چه اتفاقی داره میفته. این اتفاق تو پروژههای تمرینی که یه بار میزنی و میذاریش کنار، نمیفته.
مثلاً یه بازی بود قدیما تو ایران به اسم "تراوین". یه نقشه ۴۰۰ در ۴۰۰ داشت (مختصات منفی هم داشت) یعنی ۱۶۰۰۰ خونه. هر کاربر که ثبتنام میکرد، یه خونه تو نقشه میگرفت که میشد دهکده اصلیش. اولین شرط بازی این بود که دو دهکده نمیتونن تو یه مختصات باشن. خب، اینجا میتونستی یه تیبل با ۱۶۰۰۰ خونه بسازی و هر بار که کاربر ثبتنام کرد، یه مختصات خالی بهش بدی. به این روش میگن whitenoise sampling
تا اینجا پروژه تمرینی تموم میشه. ولی پیچیدگی از اینجا شروع میشه که بیزنس متوجه میشه کاربرا تو کل نقشه پخش شدن، بعضیا چسبیدن به هم، بعضیا دورن. حالا بیزنس میگه برای بیشتر کردن هیجان بازی، باید کاربرا رو نزدیک هم نگه داری. برای همین، مثلاً به جای ۱۶۰۰۰ خونه، ۴۰۰ خونه مرکزی رو در نظر میگیری و وقتی نصفش پر شد، میری سراغ ۱۶۰۰ خونه. به این روش میگن progressive sampling.
مشکل بعدی اینه که کاربرا خیلی بهم چسبیدن و این باعث میشه هیجان بازی زیادی زیاد شه و اول بازی همه به هم حمله کنن، که این خودش باعث میشه خیلیا همون اول بازی رو ول کنن. حالا بیزنس میخواد یه فاصله حداقلی بین دهکدهها بذاری. اینجا به روش blue sampling میرسی.
میبینی؟ یه سیستم ساده چطور با دوتا نیاز بیزنسی که اول مشخص نبود، پیچیده شد؟ این مثال رو زدم که بگم یه پروژه مثل فروشگاه زدن اصلاً چشمگیر نیست. با همونم شاید شغل بگیری، ولی اگه میخوای سریعتر شغل پیدا کنی، برو یه پروژه استارت بزن که واقعاً به دردت بخوره و یه مشکلی که داری رو حل کنه.
پس من میگم طبق قانون gall سیستم complex ای که کار کنه به دنیا نمیاد, بلکه سیستم ساده ای بود که کار میکرد و به سیستم complex بلوغ پیدا کرده. یک مقاله خیلی قشنگ راجب همین قانون.
مثال؟ یه نگاه به گیتهاب من بنداز. همه پروژههام اینطوریه. از لینکدین کراولر گرفته تا کلودفلیر کراولر و aioclock. همه برای این ساخته شدن که یه مشکلی که داشتم رو حل کنن.
@PyBackendHub
یه پروژه مثل فروشگاه اینترنتی شاید کمک کنه چیزای پایهای یاد بگیری، ولی نمیشه گفت واقعاً بلدی. چرا؟ چون یه نرمافزار ساده ساختی که خیلی پیچیده نیست، یه مشکلی رو حل نکردی، شاید فقط چندتا کد رو کپی پیست کردی. "بلد بودن" یعنی این که بتونی از دانشت بهصورت عملی استفاده کنی و یه مشکل واقعی رو حل کنی، اونم جوری که بفهمی چه اتفاقی داره میفته. این اتفاق تو پروژههای تمرینی که یه بار میزنی و میذاریش کنار، نمیفته.
مثلاً یه بازی بود قدیما تو ایران به اسم "تراوین". یه نقشه ۴۰۰ در ۴۰۰ داشت (مختصات منفی هم داشت) یعنی ۱۶۰۰۰ خونه. هر کاربر که ثبتنام میکرد، یه خونه تو نقشه میگرفت که میشد دهکده اصلیش. اولین شرط بازی این بود که دو دهکده نمیتونن تو یه مختصات باشن. خب، اینجا میتونستی یه تیبل با ۱۶۰۰۰ خونه بسازی و هر بار که کاربر ثبتنام کرد، یه مختصات خالی بهش بدی. به این روش میگن whitenoise sampling
تا اینجا پروژه تمرینی تموم میشه. ولی پیچیدگی از اینجا شروع میشه که بیزنس متوجه میشه کاربرا تو کل نقشه پخش شدن، بعضیا چسبیدن به هم، بعضیا دورن. حالا بیزنس میگه برای بیشتر کردن هیجان بازی، باید کاربرا رو نزدیک هم نگه داری. برای همین، مثلاً به جای ۱۶۰۰۰ خونه، ۴۰۰ خونه مرکزی رو در نظر میگیری و وقتی نصفش پر شد، میری سراغ ۱۶۰۰ خونه. به این روش میگن progressive sampling.
مشکل بعدی اینه که کاربرا خیلی بهم چسبیدن و این باعث میشه هیجان بازی زیادی زیاد شه و اول بازی همه به هم حمله کنن، که این خودش باعث میشه خیلیا همون اول بازی رو ول کنن. حالا بیزنس میخواد یه فاصله حداقلی بین دهکدهها بذاری. اینجا به روش blue sampling میرسی.
میبینی؟ یه سیستم ساده چطور با دوتا نیاز بیزنسی که اول مشخص نبود، پیچیده شد؟ این مثال رو زدم که بگم یه پروژه مثل فروشگاه زدن اصلاً چشمگیر نیست. با همونم شاید شغل بگیری، ولی اگه میخوای سریعتر شغل پیدا کنی، برو یه پروژه استارت بزن که واقعاً به دردت بخوره و یه مشکلی که داری رو حل کنه.
پس من میگم طبق قانون gall سیستم complex ای که کار کنه به دنیا نمیاد, بلکه سیستم ساده ای بود که کار میکرد و به سیستم complex بلوغ پیدا کرده. یک مقاله خیلی قشنگ راجب همین قانون.
مثال؟ یه نگاه به گیتهاب من بنداز. همه پروژههام اینطوریه. از لینکدین کراولر گرفته تا کلودفلیر کراولر و aioclock. همه برای این ساخته شدن که یه مشکلی که داشتم رو حل کنن.
@PyBackendHub
Signal Processing Stack Exchange
Sampling of band-limited white noise
The context is communication where we have a front-end that samples a signal and a noise (but here we focus only on the noise). My goal is to determine the noise power that I should use to simulate...
👍63👎8👏4🍌3🔥2👌2❤1💋1🆒1
Forwarded from سید فرندز / برنامه نویسی / هک و امنیت / تکنولوژی (SeYeD.Dev)
خیلیا سوال میپرسن موقعیت کاراموز و جونیور گیر نمیاد، چطور استخدام بشیم پس
همیشه گفتم من که حتی اگر شده یکی دوماه زمان بزارید یک ایده ای مطرح کنید که بتونید بیزینس باهاش بزنید و بالا بیارید، صرفا یک وبلاگ یا فروشگاه نزنید، چیزی بزنید که یوزربیاد روش و استفاده کنه
اینجا مانی یکسری توضیحات داده که چرا پروژه های ساده نمیتونن مارو استخدام کنن :
https://news.1rj.ru/str/PyBackEndHub/1109
دوست عزیز وقتی میخوای پروژه بزنی، نگا نکن چه توانایی داری، تو باید خودت رشد بدی، فراتر از توانایی هات تصمیم بگیر، برنامه نویسی که به چالش نخوره ، کرم شب تابه با لامپ سوخته (این چه مثالیه، حداقل زنبور بی عسل رو میگفتی)
حتی با یک پروژه هم میتونید استخدام بشید، حتی میتونید استخدام کنید افرادی رو که براتون کار کنن :)
من هنوز از پروژه های ۵-۶ سال پیشم درامد دارم، اگر سپنتا خاموش نمیکردم از پروژه ده سال پیشمم هنوز درامد میتونستم داشته باشم
@SEYED_BAX
همیشه گفتم من که حتی اگر شده یکی دوماه زمان بزارید یک ایده ای مطرح کنید که بتونید بیزینس باهاش بزنید و بالا بیارید، صرفا یک وبلاگ یا فروشگاه نزنید، چیزی بزنید که یوزربیاد روش و استفاده کنه
اینجا مانی یکسری توضیحات داده که چرا پروژه های ساده نمیتونن مارو استخدام کنن :
https://news.1rj.ru/str/PyBackEndHub/1109
دوست عزیز وقتی میخوای پروژه بزنی، نگا نکن چه توانایی داری، تو باید خودت رشد بدی، فراتر از توانایی هات تصمیم بگیر، برنامه نویسی که به چالش نخوره ، کرم شب تابه با لامپ سوخته (این چه مثالیه، حداقل زنبور بی عسل رو میگفتی)
حتی با یک پروژه هم میتونید استخدام بشید، حتی میتونید استخدام کنید افرادی رو که براتون کار کنن :)
من هنوز از پروژه های ۵-۶ سال پیشم درامد دارم، اگر سپنتا خاموش نمیکردم از پروژه ده سال پیشمم هنوز درامد میتونستم داشته باشم
@SEYED_BAX
👍17👎8🔥1👏1
Python BackendHub
دیشب تو گروه بحث بود که من اینترن هستم و چیکار کنم که شغل پیدا کنم یا رزومهام بیشتر دیده بشه. تو پیوی هم خیلیا سوال میپرسن که چطور بدون تجربه کاری اولین شغلشون رو بگیرن. ببین، همه شرکتا دنبال کسی میگردن که واقعاً یک مهارت رو بلده. حالا شاید بگی من ۴ سال…
یک نکته بگم که برداشت اشتباه نشه از این پست من. من با این پست نمیخواستم این پیام رو به مخاطب بدم که حتما باید بری یک پروژه واقعی اوپن سورس استارت بزنی. میخواستم درک کنید چرا دانش theory برای گرفتن شغل میتونه کافی نباشه و چرا شرکتا همیشه ترجیحشون با کسیه که سابقه کاری داره. و درک کنید کد زدن برای بیزنس یک اسکیله که اگه برای بیزنسی کد نزدی قطعا نداریش.
امیربهادر راه های دیگه ای هم اشاره کرد مثل کاره فریلنسری. یا ...
نکته خیلی مهم اینه که وقتی من دارم رزومتون رو میخونم, نبینم صرفا دو پروژه فروشگاهی زدید و جز این چیزه دیگه ای نیست تو رزومتون. اون وایب problem solver رو باید من بدید. ممکنه هم با همچین رزومه ای کار پیدا کنید ولی احتمالش کمتره.
برای پیدا کردن کار بنظره من ۳ فاکتور دخیله: ۱. لوکیشن خوب. ۲. میزانی که اپلای میکنید. ۳. کیفیت رزومه. لوکیشن ممکنه دسته خودتون نباشه, ولی اون ۲ تای دیگه هست.
@PyBackendHub
امیربهادر راه های دیگه ای هم اشاره کرد مثل کاره فریلنسری. یا ...
نکته خیلی مهم اینه که وقتی من دارم رزومتون رو میخونم, نبینم صرفا دو پروژه فروشگاهی زدید و جز این چیزه دیگه ای نیست تو رزومتون. اون وایب problem solver رو باید من بدید. ممکنه هم با همچین رزومه ای کار پیدا کنید ولی احتمالش کمتره.
برای پیدا کردن کار بنظره من ۳ فاکتور دخیله: ۱. لوکیشن خوب. ۲. میزانی که اپلای میکنید. ۳. کیفیت رزومه. لوکیشن ممکنه دسته خودتون نباشه, ولی اون ۲ تای دیگه هست.
@PyBackendHub
👍18👎8🤬1😈1
دوستان خواهشا پیوی من سوال برنامه نویسی و جنرال نپرسید.
https://news.1rj.ru/str/PythonFellow
عضو گروه بشین، من همیشه معمولا پاسخ میدم. بقیه هم میدن، سوال ممکنه برای شما باشه ولی بقیه هم میتونن استفاده کنند جواب بدن و نظره من ممکنه bias باشه. بحث بهتره جمعی باشه تا دو نفره.
پیوی زمانی بپرسید که سوالتون رو نمیخواین تو جمع مطرح کنید به دلایل خیلی شخصی.
@PyBackendHub
https://news.1rj.ru/str/PythonFellow
عضو گروه بشین، من همیشه معمولا پاسخ میدم. بقیه هم میدن، سوال ممکنه برای شما باشه ولی بقیه هم میتونن استفاده کنند جواب بدن و نظره من ممکنه bias باشه. بحث بهتره جمعی باشه تا دو نفره.
پیوی زمانی بپرسید که سوالتون رو نمیخواین تو جمع مطرح کنید به دلایل خیلی شخصی.
@PyBackendHub
Telegram
Python Backend Fellow
گروه رفع اشکال و بحث در مورد Backend Engineering و پایتون
Channel: @PyBackEndHub
Channel: @PyBackEndHub
👍14🤣3