چطور با کاراکتر های یونیکد، ماری میکنن که سورس کد، خلاف چیزی که میبینید عمل کنه!
Trojan Source Attacks
https://www.trojansource.codes/
Trojan Source Attacks
https://www.trojansource.codes/
نوشتههای ترمینالی
چطور با کاراکتر های یونیکد، ماری میکنن که سورس کد، خلاف چیزی که میبینید عمل کنه! Trojan Source Attacks https://www.trojansource.codes/
اگه از ادیتورهایی که فقط اسکی پشتیبانی میکنن مثل vi استفاده کنید به باگ هم نمیخورید :))))
کرش کورس برای جاوا
https://www.cs.rpi.edu/courses/fall02/netprog/notes/javaintro.pdf
https://www.cs.rpi.edu/courses/fall02/netprog/notes/javaintro.pdf
Forwarded from Deweloopers (Ehsan Ghorbani)
من میخوام چه نوع برنامهنویسی باشم ؟
https://dev.to/kvyshh/roadmap-to-learning-what-kind-of-developerprogrammerengineer-you-are-2m2j
https://dev.to/kvyshh/roadmap-to-learning-what-kind-of-developerprogrammerengineer-you-are-2m2j
DEV Community
What kind of Developer do I want to be?
Whether you're just starting your journey in the technical field, half way through, or fully...
Forwarded from FullstacksJS — Academy
چگونه یه توسعه دهنده 10X شویم
یکشنبه ۷ آذر ساعت ۹ شب توی دورهمی "چگونه به یه توسعه دهنده 10X باشیم" میخوایم درباره چگونگی افزایش productivity با استفاده setup کردن محیط توسعه صحبت کنیم.
میخوایم درباره Linux، پیشنیازها، ابزارها، تریک ها و مدل فکری که بهمون کمک میکنه productivity مون بیشتر بشه صحبت کنیم.
لینک دعوت
مباحثی که قرار هست درباشون صحبت بشه:
* پیشنیاز ها
* مشکل ما با Mouse چیه
* لینوکس چطوری کمکمون میکنه
* چرای برای خودکار کردن کاری کمتر از ۱۰ ثانیه طول میکشه باید ۲ روز وقت بذاریم
* چطوری لینوکس رو یاد بگیریم
* کدوم توزیع لینوکس
* Window System چیه
* DE چیه
* WM چیه
* فرق Tiling WM و Floating WM چیه
* پس DM چیه
* چرا هنوز از VIM استفاده میکنن
* tmux چه کمکی میکنه
همراهمون باشید 🎉
#event #meetup
@fullstacks
یکشنبه ۷ آذر ساعت ۹ شب توی دورهمی "چگونه به یه توسعه دهنده 10X باشیم" میخوایم درباره چگونگی افزایش productivity با استفاده setup کردن محیط توسعه صحبت کنیم.
میخوایم درباره Linux، پیشنیازها، ابزارها، تریک ها و مدل فکری که بهمون کمک میکنه productivity مون بیشتر بشه صحبت کنیم.
لینک دعوت
مباحثی که قرار هست درباشون صحبت بشه:
* پیشنیاز ها
* مشکل ما با Mouse چیه
* لینوکس چطوری کمکمون میکنه
* چرای برای خودکار کردن کاری کمتر از ۱۰ ثانیه طول میکشه باید ۲ روز وقت بذاریم
* چطوری لینوکس رو یاد بگیریم
* کدوم توزیع لینوکس
* Window System چیه
* DE چیه
* WM چیه
* فرق Tiling WM و Floating WM چیه
* پس DM چیه
* چرا هنوز از VIM استفاده میکنن
* tmux چه کمکی میکنه
همراهمون باشید 🎉
#event #meetup
@fullstacks
FullstacksJS — Academy
چگونه یه توسعه دهنده 10X شویم یکشنبه ۷ آذر ساعت ۹ شب توی دورهمی "چگونه به یه توسعه دهنده 10X باشیم" میخوایم درباره چگونگی افزایش productivity با استفاده setup کردن محیط توسعه صحبت کنیم. میخوایم درباره Linux، پیشنیازها، ابزارها، تریک ها و مدل فکری که بهمون…
همین الانه. اگه دوست دارید بیاید.
اگه براتون سواله که تابع rand توی سی (در واقع glibc) چطوری پیاده سازی شده:
https://sourceware.org/git/?p=glibc.git;a=blob;f=stdlib/random_r.c;hb=glibc-2.28#l353
منبع:
https://stackoverflow.com/a/3933182/10999348
https://sourceware.org/git/?p=glibc.git;a=blob;f=stdlib/random_r.c;hb=glibc-2.28#l353
منبع:
https://stackoverflow.com/a/3933182/10999348
Stack Overflow
gcc implementation of rand()
I've tried for hours to find the implementation of rand() function used in gcc...
It would be much appreciated if someone could reference me to the file containing it's implementation or website wi...
It would be much appreciated if someone could reference me to the file containing it's implementation or website wi...
Forwarded from @yegor256 news (yegor256)
A new post on my blog: https://www.yegor256.com/2021/12/01/teaching.html
Yegor Bugayenko
Academic Teaching is Hard
Recently I had an opportunity to be a teacher of a computer science course for 3rd-year BSc students in one Russian university. Here are MY lessons learned.
تایپورا گویا از بتا خارج شده، در نتیجه لایسنس میخواد و trial و این مشکلات رو داره.
در نتیجه دارم دنبال برنامه ادیتور میگردم.
انتخاب اول البته خود vimئه اما برای فارسی سخت میشه.
تایپورا با تم خاورمیانه تقریبا خوب کار میکرد.
در نتیجه دارم دنبال برنامه ادیتور میگردم.
انتخاب اول البته خود vimئه اما برای فارسی سخت میشه.
تایپورا با تم خاورمیانه تقریبا خوب کار میکرد.
یه برنامه زیبا که پیدا کردم fromscratch بود.
در واقع بیامکانات ترین ادیتوریه که میشه پیدا کد (از notepad هم کمتر)
فقط یه صفحه دارید که ادیت میکنید توش و خودش فایل رو سیو میکنه.
هربار باز کنید برنامه رو همین فایل رو بهتون نشون میده و خودکار هم سیو میکنه.
در واقع مثل sticky note یا چنین چیزی کار میکنه.
خوبی بزرگش اینه که ساده و سریعه
فارسی میتونین توش بنویسین اما rtl نیست.
نکته جالبش اینه که -> و => و اینا رو تبدیل به فلش های قشنگ میکنه.
https://fromscratch.rocks/
در واقع بیامکانات ترین ادیتوریه که میشه پیدا کد (از notepad هم کمتر)
فقط یه صفحه دارید که ادیت میکنید توش و خودش فایل رو سیو میکنه.
هربار باز کنید برنامه رو همین فایل رو بهتون نشون میده و خودکار هم سیو میکنه.
در واقع مثل sticky note یا چنین چیزی کار میکنه.
خوبی بزرگش اینه که ساده و سریعه
فارسی میتونین توش بنویسین اما rtl نیست.
نکته جالبش اینه که -> و => و اینا رو تبدیل به فلش های قشنگ میکنه.
https://fromscratch.rocks/
گزینه معقولی که پیدا کردم joplin بود.
یه ادیتور با قابلیت notebook و todo و اینا.
اما نتیجه مارکداون رو سمت راست میدیدین (برخلاف تایپورا که همونجا نشون میده)
فارسی رو خیلی خوب ساپورت میکرد (در واقع BiDi بود، مثل تلگرام و توییتر و ...)
با گوگل درایو و دراپ باکس و اینا هم میتونست سینک بشه.
مشکل بزرگش برای من این بود که خودش یه دیتابیس sqllite داشت و محتوا رو اونجا میریخت. شما نمیتونستی فایلت رو هرجا خواستی سیو کنی. همچنین تصاویر مورد استفاده رو هم توی یه پوشه resource کنار همون دیتابسیه میریخت.
عملا قابلیت کنترلی نداشتی.
مثلا نمیشه readme پروژه ت رو باهاش ادیت کنی.
البته قابلیت import و export داشت ولی خیلی سردرد بود.
یه ادیتور با قابلیت notebook و todo و اینا.
اما نتیجه مارکداون رو سمت راست میدیدین (برخلاف تایپورا که همونجا نشون میده)
فارسی رو خیلی خوب ساپورت میکرد (در واقع BiDi بود، مثل تلگرام و توییتر و ...)
با گوگل درایو و دراپ باکس و اینا هم میتونست سینک بشه.
مشکل بزرگش برای من این بود که خودش یه دیتابیس sqllite داشت و محتوا رو اونجا میریخت. شما نمیتونستی فایلت رو هرجا خواستی سیو کنی. همچنین تصاویر مورد استفاده رو هم توی یه پوشه resource کنار همون دیتابسیه میریخت.
عملا قابلیت کنترلی نداشتی.
مثلا نمیشه readme پروژه ت رو باهاش ادیت کنی.
البته قابلیت import و export داشت ولی خیلی سردرد بود.
گزینهی کاربردی بعدی QOwnNote بود.
این هم مثل joplin میتونست متن فارسی رو خوب هندل کنه (BiDi)
البته موقعی که pdf میکنه متن رو خراب میکنه.
مشکلی که داره اول اینه که زشته!
دوم اینکه باز هم متن ها رو یه جای خاص سیو میکنه و باید import export کنید هی.
در کل با وجود joplin توصیهش نمیکنم. هرچند سبک تره.
این هم مثل joplin میتونست متن فارسی رو خوب هندل کنه (BiDi)
البته موقعی که pdf میکنه متن رو خراب میکنه.
مشکلی که داره اول اینه که زشته!
دوم اینکه باز هم متن ها رو یه جای خاص سیو میکنه و باید import export کنید هی.
در کل با وجود joplin توصیهش نمیکنم. هرچند سبک تره.
گزینه مطرح و مهم بعدیمون onenoteئه،
به شکل انلاین میشه ازش استفاده کرد، حالا تیم p3x اومده همین onenoteوب رو در قالب یه برنامه الکترونی منتشر کرده.
خب onenote که تکلیفش مشخصه، اطلاعاتتون توی سرور مایکروسافت قرار میگیره و فقط میتونین pdf اکسپورت کنید.
البته با توجه به اینکه امکانات نقاشی و اینا که میده توی متن خام جا نمیشه قابل قبوله.
امکان rtl هم داره اما برای هر تیکه متنی که مینویسید باید بزنید RTL
در کل قابل قبوله. مخصوصا اگر قلم و اینا دارید واقعا زیباست.
https://www.corifeus.com/onenote
به شکل انلاین میشه ازش استفاده کرد، حالا تیم p3x اومده همین onenoteوب رو در قالب یه برنامه الکترونی منتشر کرده.
خب onenote که تکلیفش مشخصه، اطلاعاتتون توی سرور مایکروسافت قرار میگیره و فقط میتونین pdf اکسپورت کنید.
البته با توجه به اینکه امکانات نقاشی و اینا که میده توی متن خام جا نمیشه قابل قبوله.
امکان rtl هم داره اما برای هر تیکه متنی که مینویسید باید بزنید RTL
در کل قابل قبوله. مخصوصا اگر قلم و اینا دارید واقعا زیباست.
https://www.corifeus.com/onenote
برنامه laverna و encryptic بودن که خیلی اصرار داشتن روی کلود ذخیره کنن و امن باشن، در حالی که نیاز من نبود.
ضمن اینکه هیچکدومشون دیگه توسعه هم داده نمیشدن، کلا توصیه نمیشن
retext
امکان ادیت markdown رو داشت
باز هم فارسی رو خوب مینوشت اما موقع pdf کردن خرابش میکرد.
ظاهرشم تعریفی نداره هرچند قابل تحمله.
remarkable
ادیت فارسی داشت اما RTL نبود.
کلا ه مبرنامه ساده و بی امکاناتی بود. با همون notepad میتونه جایگزین بشه!
ghostwrtier
تنها گزینهای که توی پکیج های رسمی arch بود.
اما با فارسی اصلا دوست نبود.
zettlr
برنامه زیبا و پر امکاناتی بود.
فارسی رو ساپورت نمیکرد.
برای export به pdf هم pandoc میخواست.
برای انگلیسی توصیه ش میکنم.
marktext
بسیار زیباست. گزینه هاشم پنهانه که تمرکز رو به هم نزنه اما فارسی رو پشتیبانی نمیکنه.
haroopad
یه ابزار نسبتا ساده، بدون پشتیبانی فارسی.
توصیه ش نمیکنم.
mark my words
بسیار ساده، بدون امکانات خاصی و پشتیبانی از فارسی خوب نیست
eme
ادعا داره خیلی خوب و خوش ساخته ولی اینطوری نیست.
کاملا معمولی بدون پشتیبانی از فارسی
mindforger
ظاهرش تعریفی نیست اما خیلیم بد نیست.
هم امکان ادیت مستقیم markdown داره هم فاز notebook و اینا رو داره.
فارسی که ساپورت نمیکنه و کلا هم نپسندیدم.
ضمن اینکه هیچکدومشون دیگه توسعه هم داده نمیشدن، کلا توصیه نمیشن
retext
امکان ادیت markdown رو داشت
باز هم فارسی رو خوب مینوشت اما موقع pdf کردن خرابش میکرد.
ظاهرشم تعریفی نداره هرچند قابل تحمله.
remarkable
ادیت فارسی داشت اما RTL نبود.
کلا ه مبرنامه ساده و بی امکاناتی بود. با همون notepad میتونه جایگزین بشه!
ghostwrtier
تنها گزینهای که توی پکیج های رسمی arch بود.
اما با فارسی اصلا دوست نبود.
zettlr
برنامه زیبا و پر امکاناتی بود.
فارسی رو ساپورت نمیکرد.
برای export به pdf هم pandoc میخواست.
برای انگلیسی توصیه ش میکنم.
marktext
بسیار زیباست. گزینه هاشم پنهانه که تمرکز رو به هم نزنه اما فارسی رو پشتیبانی نمیکنه.
haroopad
یه ابزار نسبتا ساده، بدون پشتیبانی فارسی.
توصیه ش نمیکنم.
mark my words
بسیار ساده، بدون امکانات خاصی و پشتیبانی از فارسی خوب نیست
eme
ادعا داره خیلی خوب و خوش ساخته ولی اینطوری نیست.
کاملا معمولی بدون پشتیبانی از فارسی
mindforger
ظاهرش تعریفی نیست اما خیلیم بد نیست.
هم امکان ادیت مستقیم markdown داره هم فاز notebook و اینا رو داره.
فارسی که ساپورت نمیکنه و کلا هم نپسندیدم.
اگه تا اینجا ناامید شدید، تنها نیستین!
تنها چیزی که فارسی رو خوب ساپورت میکنه پروژههای انلاین هست مثل rtlmd و minimalist
https://minimalist.brothersincode.ir/
https://rtlmd.codecast.ir/
اما مشکل هردو اینه که دیگه کلا راست به چپه و چیز انگلیسی نمیشه توش نوشت.
توی مرورگر کار میکنه و قابلیت export و import هم نداره!
تنها چیزی که فارسی رو خوب ساپورت میکنه پروژههای انلاین هست مثل rtlmd و minimalist
https://minimalist.brothersincode.ir/
https://rtlmd.codecast.ir/
اما مشکل هردو اینه که دیگه کلا راست به چپه و چیز انگلیسی نمیشه توش نوشت.
توی مرورگر کار میکنه و قابلیت export و import هم نداره!
نوشتههای ترمینالی
اگه تا اینجا ناامید شدید، تنها نیستین! تنها چیزی که فارسی رو خوب ساپورت میکنه پروژههای انلاین هست مثل rtlmd و minimalist https://minimalist.brothersincode.ir/ https://rtlmd.codecast.ir/ اما مشکل هردو اینه که دیگه کلا راست به چپه و چیز انگلیسی نمیشه توش…
کوئرا هم گویا از «مرتب» استفاده میکنه که یه ادیتور انلاین دیگه س.
من توی کوئرا زیاد باگ دیدم
اما به هر حال:
https://www.sobhe.ir/moratab/
من توی کوئرا زیاد باگ دیدم
اما به هر حال:
https://www.sobhe.ir/moratab/
یه آپدیت بدم:
ادیتور apostrophe تا اینجا خوب بود.
هم فارسی رو زیبا پشتیبانی میکرد و هم انگلیسی رو و زیبا و سبکه.
اما مشکل اینه که متن های فارسی رو توی pdf خروجیش نمیاره.
از اونجایی که گزینه های دیگه هم کم و بیش مشکلات مشابهی داشتن تصمیم گرفتم که خودم دست به کار بشم.
تنها کاری که باید انجام بشه تبدیل markdown تولید شده به pdf با pandocئه.
اگه نمیدونید، pandoc ابزار بسیار قدرتمندی برای تبدیل هر فایلی مثل word و markdown به هر فرمت دیگه ای مثل pdf و odt و word و latexئه.
تا اونجا که فهمیدم چیزی که از همه راهدست تره براش latexئه اما مهم نیست.
حالا pandox برای تبدیل به pdf یه سری engine داره که تا اینجا weasyprint از همشون تمیز تر pdf فارسی ساخته.
مشکلی که وجود داره اینه که همه متن رو ltr در نظر میگیره. با یه متغیر میشه همه متن رو rtl کرد. اما هنوز برام کافی نیست چون متنم ممکنه هم پاراگراف های فارسی داشته باشه هم انگلیسی. به طور خاص کدها میخوام حتما ltr باشن.
تصمیم گرفتم ببینم typora چیکار میکنه که درست میشه. فرض کردم که از همون pandoc استفاده میکنه. با strace اومدم سیستمکال هاشو مانیتور کردم، ولی خب گویا حداقل برای pdf نمیاد pandoc رو مستقیم صدا کنه چون چیز به دردبخوری پیدا نکردم (خیلی هم بلد نیستم strace)
بعد اصلا یادم اومد که typora هم به زور یه تم راست به چپش درست شده و اونم فقط rtl یا ltrئه و BiDi نداره.
کار بعدی، filter های pandoc بود. اینطوریه که شما میتونی با lua یا هر زبان دیگه (lua سریع تر و پیشفرضشه) براش یه اسکریپت بنویسی.
این اسکریپتت شامل یه سری تابعه که بسته به اسمش توسط pandoc صدا شده میشه. مثلا تابع Str با هر کلمه صدا زده میشه و تابع Block با هر بلاک.
وروذی این تابع هم یه table (همون map) هست که اطلاعات اون المنت رو داره.
مقدار خروجی شما از این تابع به جای المنت قبلی قرار میگیره و میتونین modifyش کنین خلاصه.
اگه لوا بنویسید مستقیم کال میشه (کاری که دارم میکنم) اما با زبون های دیگه هم میشه با کمک json ارتباط برقرار کرد، هنوز نرفتم سراغش.
حالا تغییری که روی المنت Block باید بدم اینه که بگم اگه انگلیسی بود (مثلا با خروجی انگلیسی شروع شده بود، بیا و به جای rtl (که پیشفرض گذاشتمش) شما ltrش کن.
اما خب کار نمیکنه =)
نمیدونم lua بلد نیستم یا چی =)
ادیتور apostrophe تا اینجا خوب بود.
هم فارسی رو زیبا پشتیبانی میکرد و هم انگلیسی رو و زیبا و سبکه.
اما مشکل اینه که متن های فارسی رو توی pdf خروجیش نمیاره.
از اونجایی که گزینه های دیگه هم کم و بیش مشکلات مشابهی داشتن تصمیم گرفتم که خودم دست به کار بشم.
تنها کاری که باید انجام بشه تبدیل markdown تولید شده به pdf با pandocئه.
اگه نمیدونید، pandoc ابزار بسیار قدرتمندی برای تبدیل هر فایلی مثل word و markdown به هر فرمت دیگه ای مثل pdf و odt و word و latexئه.
تا اونجا که فهمیدم چیزی که از همه راهدست تره براش latexئه اما مهم نیست.
حالا pandox برای تبدیل به pdf یه سری engine داره که تا اینجا weasyprint از همشون تمیز تر pdf فارسی ساخته.
مشکلی که وجود داره اینه که همه متن رو ltr در نظر میگیره. با یه متغیر میشه همه متن رو rtl کرد. اما هنوز برام کافی نیست چون متنم ممکنه هم پاراگراف های فارسی داشته باشه هم انگلیسی. به طور خاص کدها میخوام حتما ltr باشن.
تصمیم گرفتم ببینم typora چیکار میکنه که درست میشه. فرض کردم که از همون pandoc استفاده میکنه. با strace اومدم سیستمکال هاشو مانیتور کردم، ولی خب گویا حداقل برای pdf نمیاد pandoc رو مستقیم صدا کنه چون چیز به دردبخوری پیدا نکردم (خیلی هم بلد نیستم strace)
بعد اصلا یادم اومد که typora هم به زور یه تم راست به چپش درست شده و اونم فقط rtl یا ltrئه و BiDi نداره.
کار بعدی، filter های pandoc بود. اینطوریه که شما میتونی با lua یا هر زبان دیگه (lua سریع تر و پیشفرضشه) براش یه اسکریپت بنویسی.
این اسکریپتت شامل یه سری تابعه که بسته به اسمش توسط pandoc صدا شده میشه. مثلا تابع Str با هر کلمه صدا زده میشه و تابع Block با هر بلاک.
وروذی این تابع هم یه table (همون map) هست که اطلاعات اون المنت رو داره.
مقدار خروجی شما از این تابع به جای المنت قبلی قرار میگیره و میتونین modifyش کنین خلاصه.
اگه لوا بنویسید مستقیم کال میشه (کاری که دارم میکنم) اما با زبون های دیگه هم میشه با کمک json ارتباط برقرار کرد، هنوز نرفتم سراغش.
حالا تغییری که روی المنت Block باید بدم اینه که بگم اگه انگلیسی بود (مثلا با خروجی انگلیسی شروع شده بود، بیا و به جای rtl (که پیشفرض گذاشتمش) شما ltrش کن.
اما خب کار نمیکنه =)
نمیدونم lua بلد نیستم یا چی =)