بچه ها روز داره به سمت تمام شدن میره، در نظر داشته باشید که هدف ما فعالیت شما در گیتهاب هست، برای همین حتما یک فعالیتی امروز انجام بدید چون اگر امروز فعالیتی انجام ندید دیگه نمیتونید روزهایی که میگذره رو توی گیتهاب سبز کنید.
از ساده ترین کارهایی که میتونید انجام بدید اینه که یک issue بزنید، فورک بگیرید.
امروز Saba و Ali قسمتی از کار رو گرفتن و Saba یک issue زد و توی پروفایل گیتهابش یک مشارکت دریافت کرد.
بنابراین هیچ روزی رو از دست ندید تا گیتهاب شما همیشه فعال بمونه.
بچه هایی که جاوا و پایتون و زبان دیگه ای کار میکنید شروع کنید به فورک گرفتن با هم هماهنگ بشید و issue بزنید و یک قسمتی رو پیاده سازی کنید.
❤️❤️
از ساده ترین کارهایی که میتونید انجام بدید اینه که یک issue بزنید، فورک بگیرید.
امروز Saba و Ali قسمتی از کار رو گرفتن و Saba یک issue زد و توی پروفایل گیتهابش یک مشارکت دریافت کرد.
بنابراین هیچ روزی رو از دست ندید تا گیتهاب شما همیشه فعال بمونه.
بچه هایی که جاوا و پایتون و زبان دیگه ای کار میکنید شروع کنید به فورک گرفتن با هم هماهنگ بشید و issue بزنید و یک قسمتی رو پیاده سازی کنید.
❤️❤️
👍7
منظور از fork چیه؟
سعی میکنم طوری توضیح بدم که همه متوجه بشن.
دقت کنید دوستان وقتی یک repository (پروژه) توی گیت تعریف میشه قابلیت اینو داره که هرکسی اونو برای خودش شخصی سازی کنه. شخصی سازی یعنی شما هر تغییری روش اعمال کنی مال خودته و مالکش میشی خودت.
یه پروژه به نام Serialization روی گیتهاب وجود داره. وقتی شما اونو فورک میگیرید یعنی اونو میخواید شخصی سازی کنید. به خاطر اینکه روی سورس اصلی دسترسی پوش کردن و ارسال تغییرات ندارید.
وقتی فورک گرفتید آدرسش برای شما فرق میکنه یعنی از یک پروژه صدها نفر میتونن فورک بگیرن و کار کنن روی فورک خودشون.
بعد وقتی کارشون روی فورک خودشون تموم شد میتونن درخواست پول بزنن به پروژه ی اصلی تا تغییراتشون روی پروژه ی اصلی مرج بشه که بهش میگن pull request.
بعد از اینکه پول رکوئست شما مرج شد شما میشید عضو contribution های اون پروژه و اسمتون توی لیست کسانی که توی اون مشارکت داشتن میاد.
شما میتونید از یک پروژه چندین فورک شخصی برای خودتون بگیرید، هر فورک توی پروفایل خودتون قابل مشاهده هست.
به پروژه ای که فورک کردید اصطلاحا میگن origin و به پروژه ی اصلی میگن upstream.
فورک شما فقط با اجازه ی شما توانایی sync شدن با upstream رو داره.
#فورک
#fork
#pullrequest
سعی میکنم طوری توضیح بدم که همه متوجه بشن.
دقت کنید دوستان وقتی یک repository (پروژه) توی گیت تعریف میشه قابلیت اینو داره که هرکسی اونو برای خودش شخصی سازی کنه. شخصی سازی یعنی شما هر تغییری روش اعمال کنی مال خودته و مالکش میشی خودت.
یه پروژه به نام Serialization روی گیتهاب وجود داره. وقتی شما اونو فورک میگیرید یعنی اونو میخواید شخصی سازی کنید. به خاطر اینکه روی سورس اصلی دسترسی پوش کردن و ارسال تغییرات ندارید.
وقتی فورک گرفتید آدرسش برای شما فرق میکنه یعنی از یک پروژه صدها نفر میتونن فورک بگیرن و کار کنن روی فورک خودشون.
بعد وقتی کارشون روی فورک خودشون تموم شد میتونن درخواست پول بزنن به پروژه ی اصلی تا تغییراتشون روی پروژه ی اصلی مرج بشه که بهش میگن pull request.
بعد از اینکه پول رکوئست شما مرج شد شما میشید عضو contribution های اون پروژه و اسمتون توی لیست کسانی که توی اون مشارکت داشتن میاد.
شما میتونید از یک پروژه چندین فورک شخصی برای خودتون بگیرید، هر فورک توی پروفایل خودتون قابل مشاهده هست.
به پروژه ای که فورک کردید اصطلاحا میگن origin و به پروژه ی اصلی میگن upstream.
فورک شما فقط با اجازه ی شما توانایی sync شدن با upstream رو داره.
#فورک
#fork
#pullrequest
👍16👌6
بچهها جمعهی همین هفته گفتگوی آنلاین داریم حتما شرکت کنید، جمعهها به دلیل اینکه اکثر مون بیشتر میتونیم مشارکت کنیم رو روز پلن در نظر میگیریم.
اگه سر ساعتش مساله دارید مطرح کنید.
توی گروه همین کانال گفتگوی آنلاین میذاریم. لطفا بچه ها توی کانال عضو باشید تا مطالب رو سر جمع داشته باشید و از دست ندید.
💓
اگه سر ساعتش مساله دارید مطرح کنید.
توی گروه همین کانال گفتگوی آنلاین میذاریم. لطفا بچه ها توی کانال عضو باشید تا مطالب رو سر جمع داشته باشید و از دست ندید.
💓
👍7
سلام بچهها روز بخیر.
مرسی از اینکه توی این کامیونیتی شرکت داشتید و دارید همراهی می کنید.
یکی از بچهها پرسیدن که من کارم برنامه نویسی نیست و خیلی مسائل و واژه ها رو متوجه نمیشم و اینکه هدف از این کامیونیتی دقیقا چیه و چه کمکی میتونیم انجام بدیم.
#هدف چیه؟
چندین هدف برای این کامیونیتی من در نظر دارم یه سری اهداف بلند مدت هستند و یه سری اهداف کوتاه مدت.
اهداف کوتاه مدت که خیلی سریع میتونیم بهش برسیم:
1.فعال نگه داشتن فعالیت شما در گیتهاب که باعث تقویت رزومهی کاری شما برای پیدا کردن کار با شرکت های غیر ایرانی میشه.
2.یادگیری و آموزش شما جهت کار کردن توی گروه ها و تیم ها به صورت ریموت
3.یادگیری و آموزش شما جهت کار کردن با تیمهایی که روی پروژه های اوپن سورس کار میکنن
4.تقویت حرفهی شما، چطوری توی دنیا کار میکنن و ما یاد بگیریم تا بتونیم توی پروژه های اوپن سورس بزرگتر فعالیت کنیم و کانتریبیوت بشیم.
5.مشورت شما با یک کامیوینیتی توسعه مثل این گروه و کانال که خیلی زیاد شدیم باعث بوجود اومدن تبادل نظراتی میشه که سریع پیشرفت میکنید و ابزار ها و پکیج ها و محیطهای توسعه ی جدید رو بیشتر بشناسید و همیشه بروز بمونید.
اهداف بلند مدت:
1.ساخت یک کامیونیتی بسیار قوی ایرانیان که این برند با توجه به فعالیت های خودمون توی این کامیونیتی ساخته میشه و برای شرکت های دیگه در آینده که وقتی میخوان شمارو استخدام کنن کافیه که براحتی بدونن شما توی چه محیطهای توسعه ای فعالیت داشتید. الان این کامیونیتی قوی نیست ولی در آینده وقتی قوی بشه تبدیل به یک برندی میشه که خودتون بزرگش کردید و در نهایت هرکسی وارد این کامیونیتی میشه اعتبار پیدا میکنه به واسطهی وجود خودتون.
2.خدارو چه دیدی شاید یک اسپانسر قوی گرفتیم و توی این کامیونیتی تونستیم یک کسب و کار ایجاد کنیم. اگر با abp آشنا باشید میدونید که از طرف یک شرکتی توی ترکیه توسعه داده شد و این کامیونیتی اونقدر قوی شد که در نهایت مایکروسافت کل اون شرکت و کامیونیتی رو خرید.
3.جا انداختن فرهنگ استفاده از ابزارها و محیطهای اوپن سورس
4.ساخت یک ابزار حرفهای و آسان و سریع که از اسم کانال پیداست برای اینکه توسعه و برنامه نویسی رو سریع کنیم و در آینده خیلی ها بیان و از پکیج هایی که ما توسعه دادیم استفاده کنن.
5.مشارکت در پروژه های اوپن سورس بزرگ در دنیا.
خب یه سری افراد رول هاشون متفاوته و شاید ازمون سوال بشه که چطوری میتونم کمک کنم من چندتا رو مثال میزنم:
1.در حال حاضر توسعه ها محدود به زبان برنامه نویسی نیست بنابراین همهی شما میتونید با هر زبانی که کار میکنید گروه های کوچیک تشکیل بدید و سورس رو توسعه بدید.
2.فرانت کار کردید؟ کامیوینیتی مربوط به توسعهی کامپوننت های فرانت میتونید راه اندازی کنید ما ریپوزیتوری ایجاد میکنیم و بچه های فرانت میتونن روی ساختار و معماری به هر زبانی اون کامپوننت رو راه اندازی کنند. ایده بدید و راحت باشید، روی چی دوست دارید کار کنید همونو ایده بدید.
3.دیزاین کار کردید؟ میتونید با بچه های فرانت هماهنگ بشید و برای توسعه های فرانت دیزاین بزنید و توی کامیوینیتی گیتهاب ثبتش کنید. یا برای طراحی های لوگو حتی برای پکیج ها میتونید کمکشون کنید.
4.مدیر پروژه هستید؟ بخشی از تیم چند نفره رو تشکیل بدید و کمکشون کنید تا بتونن با هماهنگی بیشتر کار رو پیش ببرن.
5.توی حرفهی devops کار کردید؟ پروژه ها رو action های گیتهاب میتونید براحتی روی pipline های آژور یا خود گیتهاب فراهم کنید.
6.نویسنده هستید یا انگلیسیتون خوبه؟ میتونید توی این کامیونیتی در قسمت wiki و آموزش و داکیومنت کردن کمک کنید.
7.ایده دارید؟ اون ایده رو توی سورس ها و پروژه ها ایجاد کنید تا توسعه دهنده ها اونارو توسعه بدن.
و...
مرسی از اینکه توی این کامیونیتی شرکت داشتید و دارید همراهی می کنید.
یکی از بچهها پرسیدن که من کارم برنامه نویسی نیست و خیلی مسائل و واژه ها رو متوجه نمیشم و اینکه هدف از این کامیونیتی دقیقا چیه و چه کمکی میتونیم انجام بدیم.
#هدف چیه؟
چندین هدف برای این کامیونیتی من در نظر دارم یه سری اهداف بلند مدت هستند و یه سری اهداف کوتاه مدت.
اهداف کوتاه مدت که خیلی سریع میتونیم بهش برسیم:
1.فعال نگه داشتن فعالیت شما در گیتهاب که باعث تقویت رزومهی کاری شما برای پیدا کردن کار با شرکت های غیر ایرانی میشه.
2.یادگیری و آموزش شما جهت کار کردن توی گروه ها و تیم ها به صورت ریموت
3.یادگیری و آموزش شما جهت کار کردن با تیمهایی که روی پروژه های اوپن سورس کار میکنن
4.تقویت حرفهی شما، چطوری توی دنیا کار میکنن و ما یاد بگیریم تا بتونیم توی پروژه های اوپن سورس بزرگتر فعالیت کنیم و کانتریبیوت بشیم.
5.مشورت شما با یک کامیوینیتی توسعه مثل این گروه و کانال که خیلی زیاد شدیم باعث بوجود اومدن تبادل نظراتی میشه که سریع پیشرفت میکنید و ابزار ها و پکیج ها و محیطهای توسعه ی جدید رو بیشتر بشناسید و همیشه بروز بمونید.
اهداف بلند مدت:
1.ساخت یک کامیونیتی بسیار قوی ایرانیان که این برند با توجه به فعالیت های خودمون توی این کامیونیتی ساخته میشه و برای شرکت های دیگه در آینده که وقتی میخوان شمارو استخدام کنن کافیه که براحتی بدونن شما توی چه محیطهای توسعه ای فعالیت داشتید. الان این کامیونیتی قوی نیست ولی در آینده وقتی قوی بشه تبدیل به یک برندی میشه که خودتون بزرگش کردید و در نهایت هرکسی وارد این کامیونیتی میشه اعتبار پیدا میکنه به واسطهی وجود خودتون.
2.خدارو چه دیدی شاید یک اسپانسر قوی گرفتیم و توی این کامیونیتی تونستیم یک کسب و کار ایجاد کنیم. اگر با abp آشنا باشید میدونید که از طرف یک شرکتی توی ترکیه توسعه داده شد و این کامیونیتی اونقدر قوی شد که در نهایت مایکروسافت کل اون شرکت و کامیونیتی رو خرید.
3.جا انداختن فرهنگ استفاده از ابزارها و محیطهای اوپن سورس
4.ساخت یک ابزار حرفهای و آسان و سریع که از اسم کانال پیداست برای اینکه توسعه و برنامه نویسی رو سریع کنیم و در آینده خیلی ها بیان و از پکیج هایی که ما توسعه دادیم استفاده کنن.
5.مشارکت در پروژه های اوپن سورس بزرگ در دنیا.
خب یه سری افراد رول هاشون متفاوته و شاید ازمون سوال بشه که چطوری میتونم کمک کنم من چندتا رو مثال میزنم:
1.در حال حاضر توسعه ها محدود به زبان برنامه نویسی نیست بنابراین همهی شما میتونید با هر زبانی که کار میکنید گروه های کوچیک تشکیل بدید و سورس رو توسعه بدید.
2.فرانت کار کردید؟ کامیوینیتی مربوط به توسعهی کامپوننت های فرانت میتونید راه اندازی کنید ما ریپوزیتوری ایجاد میکنیم و بچه های فرانت میتونن روی ساختار و معماری به هر زبانی اون کامپوننت رو راه اندازی کنند. ایده بدید و راحت باشید، روی چی دوست دارید کار کنید همونو ایده بدید.
3.دیزاین کار کردید؟ میتونید با بچه های فرانت هماهنگ بشید و برای توسعه های فرانت دیزاین بزنید و توی کامیوینیتی گیتهاب ثبتش کنید. یا برای طراحی های لوگو حتی برای پکیج ها میتونید کمکشون کنید.
4.مدیر پروژه هستید؟ بخشی از تیم چند نفره رو تشکیل بدید و کمکشون کنید تا بتونن با هماهنگی بیشتر کار رو پیش ببرن.
5.توی حرفهی devops کار کردید؟ پروژه ها رو action های گیتهاب میتونید براحتی روی pipline های آژور یا خود گیتهاب فراهم کنید.
6.نویسنده هستید یا انگلیسیتون خوبه؟ میتونید توی این کامیونیتی در قسمت wiki و آموزش و داکیومنت کردن کمک کنید.
7.ایده دارید؟ اون ایده رو توی سورس ها و پروژه ها ایجاد کنید تا توسعه دهنده ها اونارو توسعه بدن.
و...
👍8
دوستان عزیزم فردا ساعت 12 ظهر احتمالا جلسه میتینگ رو توی تلگرام برگزار میکنیم.
اگر مخالفتی دارید یا ساعت کانفیلیت داره براتون خبرم کنید.
اگر مخالفتی دارید یا ساعت کانفیلیت داره براتون خبرم کنید.
👌5👍2
بچهها امروز ساعت 12 میتینگ توی گروه داریم 💪
بی صبرانه منتظر حضور و ایدههاتون هستیم.
بی صبرانه منتظر حضور و ایدههاتون هستیم.
این یک تصویر کلی از ساختار پکیج Serialization ماست، هدف ما اینه که کار رو برای توسعه دهندهها آسون کنیم درسته؟ خب یکی از مزیت هایی که کار ما داره اینه که در واقع میایم یک داکیومنت برای سریالایز و دیسریالایز میسازیم و هرچیزی که بخوایم رو اینجا پیاده سازی میکنیم.
دیگه اگر کسی بخواد از newtonsoft یا TextJson یا messagePack و memoryPack و binarygo و ... استفاده کنه لازم نیست بره داکیومنتش رو مطالعه کنه.
فقط استفاده از داکیومنت ما براش کافیه چون ما همشون رو یکپارچه کردیم.
از این معماری سعی کنید توی تمامی زبانهایی که پیاده سازی میکنید استفاده کنید، هر بخش و هر پکیجی پیاده سازی خودش رو داره.
اگر یه نفر خواست از ساختار ما توی newtonsoft استفاده کنه فقط پکیج newtsoft اش رو نصب میکنه و تمام. کدش رو تغییر نمیده چون abstraction اش ثابته و ساختار خودمون روش سوار شده.
دیگه اگر کسی بخواد از newtonsoft یا TextJson یا messagePack و memoryPack و binarygo و ... استفاده کنه لازم نیست بره داکیومنتش رو مطالعه کنه.
فقط استفاده از داکیومنت ما براش کافیه چون ما همشون رو یکپارچه کردیم.
از این معماری سعی کنید توی تمامی زبانهایی که پیاده سازی میکنید استفاده کنید، هر بخش و هر پکیجی پیاده سازی خودش رو داره.
اگر یه نفر خواست از ساختار ما توی newtonsoft استفاده کنه فقط پکیج newtsoft اش رو نصب میکنه و تمام. کدش رو تغییر نمیده چون abstraction اش ثابته و ساختار خودمون روش سوار شده.
👌1
جلسه ضبط شده ی میتینگ برای دوستانی که میخوان آفلاین ببینن یا فرصت نداشتن آنلاین ببینن
👍10
امروز با تغییراتی که با چندتا از بچه ها که زحمت زیادی کشیدن روی DevOps تونستیم فرایند پابلیش پکیج رو اتوماسیون کنیم.
با توجه به تغییرات و پول رکوئست هایی که بچه ها توی این یکی دو هفته دادن پروژه ی Serialization با حدود 21 فورک و 25 تا پول رکوئست مرج شده و 11 تا Issue داره میترکونه.
در حال حاضر پکیج های زیر در nuget پابلیش شدن و قابل استفاده توی زبان برنامه نویسی سی شارپ هستند:
EasyMicroservices.Serialization.YamlDotNet
EasyMicroservices.Serialization.System.Text.Xml
EasyMicroservices.Serialization.System.Text.Json
EasyMicroservices.Serialization.Newtonsoft.Json
EasyMicroservices.Serialization.MessagePack
EasyMicroservices.Serialization.MemoryPack
EasyMicroservices.Serialization.BinaryGo
بدون تعارف ترکوندید.
بچه های بخش Go هم دارن به سمت جلو میان و پول رکوئست میزنن.
منتظریم بچه های بخش های دیگه و زبان های دیگه جوین شن و حسابی این کامیونیتی رو توی دستشون بگیرن.
واقعا خیلی هیجان انگیزه. به کامیونیتی جوین شید بچه ها، به زودی پکیج ها و ریپازیتوری های جدیدی رو معرفی میکنیم که روی همین ساختار اونارو پیاده سازی و منتشر میکنیم.
سورس این پکیج:
https://github.com/EasyMicroservices/Serialization
با توجه به تغییرات و پول رکوئست هایی که بچه ها توی این یکی دو هفته دادن پروژه ی Serialization با حدود 21 فورک و 25 تا پول رکوئست مرج شده و 11 تا Issue داره میترکونه.
در حال حاضر پکیج های زیر در nuget پابلیش شدن و قابل استفاده توی زبان برنامه نویسی سی شارپ هستند:
EasyMicroservices.Serialization.YamlDotNet
EasyMicroservices.Serialization.System.Text.Xml
EasyMicroservices.Serialization.System.Text.Json
EasyMicroservices.Serialization.Newtonsoft.Json
EasyMicroservices.Serialization.MessagePack
EasyMicroservices.Serialization.MemoryPack
EasyMicroservices.Serialization.BinaryGo
بدون تعارف ترکوندید.
بچه های بخش Go هم دارن به سمت جلو میان و پول رکوئست میزنن.
منتظریم بچه های بخش های دیگه و زبان های دیگه جوین شن و حسابی این کامیونیتی رو توی دستشون بگیرن.
واقعا خیلی هیجان انگیزه. به کامیونیتی جوین شید بچه ها، به زودی پکیج ها و ریپازیتوری های جدیدی رو معرفی میکنیم که روی همین ساختار اونارو پیاده سازی و منتشر میکنیم.
سورس این پکیج:
https://github.com/EasyMicroservices/Serialization
GitHub
GitHub - EasyMicroservices/Serialization: Wrapper for any Serialize package
Wrapper for any Serialize package. Contribute to EasyMicroservices/Serialization development by creating an account on GitHub.
👏6❤1
سلام دوستان روز بخیر...
یک مرحله جدیدتر و جلوتر نیاز داریم تا بچههایی که توی کد هنوز دستشون روون نشده شروع کنن روش کار کردن.
ما کنار src یه پوشه میخوایم به نام samples توی این پوشه هم قراره به ازای هر زبان جدا باشه برای مثال samples/CSharp بعد توی پوشه ی سی شارپ یا هر زبانی، میخوایم در واقع مثال هایی از استفاده از این پکیج هارو توی معماری های مختلف در قالب پروژه پیاده سازی کنیم تا برنامه نویس هایی که میخوان از این پکیج ها استفاده کنن مثال هاش رو اینجا پیدا کنن.
چندتا نمونه من میزنم که میتونید issue هاش رو بزنید و توی issue هم میتونید بگید من روش کار میکنم تا من issue رو به شما asign کنم.
چندتا نمونه که میتونید مثال هاش رو بزنید و شروع کنید به پیاده سازی کردن مثال ها برای استفاده از پکیج ها :
1.AspCore
2.ConsoleApp
3.WPF
4.XamarinAndroid
5.XamarinIOS
6.XamarinForms
7.Unity
برای مشاهدهی پکیج های Easymicroservices جهت نصب و استفاده توی سمپل ها میتونید به آدرس زیر برید:
https://www.nuget.org/packages?q=easymicroservices
یک مرحله جدیدتر و جلوتر نیاز داریم تا بچههایی که توی کد هنوز دستشون روون نشده شروع کنن روش کار کردن.
ما کنار src یه پوشه میخوایم به نام samples توی این پوشه هم قراره به ازای هر زبان جدا باشه برای مثال samples/CSharp بعد توی پوشه ی سی شارپ یا هر زبانی، میخوایم در واقع مثال هایی از استفاده از این پکیج هارو توی معماری های مختلف در قالب پروژه پیاده سازی کنیم تا برنامه نویس هایی که میخوان از این پکیج ها استفاده کنن مثال هاش رو اینجا پیدا کنن.
چندتا نمونه من میزنم که میتونید issue هاش رو بزنید و توی issue هم میتونید بگید من روش کار میکنم تا من issue رو به شما asign کنم.
چندتا نمونه که میتونید مثال هاش رو بزنید و شروع کنید به پیاده سازی کردن مثال ها برای استفاده از پکیج ها :
1.AspCore
2.ConsoleApp
3.WPF
4.XamarinAndroid
5.XamarinIOS
6.XamarinForms
7.Unity
برای مشاهدهی پکیج های Easymicroservices جهت نصب و استفاده توی سمپل ها میتونید به آدرس زیر برید:
https://www.nuget.org/packages?q=easymicroservices
👍1