Software Philosophy – Telegram
Software Philosophy
3.45K subscribers
160 photos
41 videos
1.54K links
چکیده‌ای از مفاهیم به روز مهندسی نرم افزار برای مهندسین نرم‌افزار.
معماری نوین نرم‌افزار، تکنولوژی‌های برنامه نویسی جدید
Download Telegram
معماری نرم‌افزار مانند معماری ساختمان یک هنر است

آیا تا به حال به فرق یک معمار و یک مهندس عمران فکر کرده‌اید؟ تمرکز مهندسان عمران معمولا بر ساخت سازه‌ها است. آنها فکر می‌کنند چطور سازه‌هایی مانند دیوار، در، پنجره و سایر اجزا را به طور صحیح بسازند. از طرف دیگر معمارها معمولا به اینها فکر نمی‌کنند! تمرکز اصلی آنها روی ساخت و معماری فضاهایی است که بین این اجزا به وجود می‌آید. در حقیقت مهندسین عمران به دیوارها فکر می‌کنند و معمارها به فضای بین دیوارها.

نکته جالب این است که انسان‌ها یا مشتریان در نهایت از فضا‌ها استفاده می‌کنند نه دیوارها! آنها پول خرج می‌کنند تا فضای زیبایی بخرند و به ندرت دیوارها را می‌بینند.

در مهندسی نرم‌افزار، ساخت دیوار مانند کد نویسی است. برنامه‌نویسان با کد نویسی در حقیقت در حال ساخت دیوارهایی هستند که این دیوارها مستقیما برای مشتری معنی ندارد. مشتریان امکاناتی را می‌بینند که توسط این کدها برای آنها خلق شده‌است. یکی از وظایف یک مهندس نرم‌افزار تمرکز بر فضاهای ایجاد شده برای مشتری است. اینکه این فضاها چقدر کارا و مفید طراحی شده‌اند.

توضیحات کامل مفهوم فضا و تاثیر آن بر مشتری را می‌توانید در لینک زیر بخوانید.


http://mehrandvd.me/2015/10/26/spaces-shape-your-software-architecture/


#مهران_داودی (http://ow.ly/GwIl309lFEm)

کانال تلگرام:
@SoftwarePhilosophy

_____
Init only setters

در Csharp 9 با معرفی واژه کیلیدی init می توانیم خواص immutable را ساده‌تر پیاده سازی کنیم.

برای درک بهتر این موضوع وضعیت قبل از Csharp 9 و بعد از آن را بررسی می‌کنیم

قبل :

public DateTime RecordedAt { get; private set; }

در اینجا ما نمی‌توانستیم از روش Object Initializer برای مقدار دهی استفاده کنیم و باید با روش‌های دیگری مقدار دهی اولیه انجام می‌شد.

بعد از Csharp 9 :

public DateTime RecordedAt { get; init; }

همانند قبل عمل می‌کند با این تفاوت که مشکل قبلی پوشش داده شده است و عملا پس از Initializ شدن نمی‌توان تغییری در آن ایجاد کرد.

در واقع فقط در سازنده کلاس می‌توان آن را تغییر داد و توابع درون خود کلاس هم حق مقدار دهی را ندارند.

توضیحات تکمیلی را در لینک زیر بخوانید:

https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-9

⁉️ برای بحث و تبادل نظر فنی در مورد این پست، برروی دکمه «نظرت را بگو» کلیک کنید.

#حامد_حاجیلو (لینکدین)

کانال تلگرام:
@SoftwarePhilosophy

________
کتابخانه یادگیری ماشین برای C++ کاران
فلش لایت برای دامنه‌های مختلفی سرویسی ارائه داده.
لینک‌های زیر برای علاقه‌مندان می‌تواند مفید باشد:
🌻 تشخیص صوت (پروژه wav2letter) - آموزش (لینک)

🌻طبقه‌بندی تصاویر

🌻تشخیص شئ

🌻مدل زبانی

github
@silicon_brain
Forwarded from فلسفه دیزاین
روش‌های اولویت‌بندی امکانات در روند طراحی محصول

شاید برای شما هم پیش آمده باشد که در روند طراحی و توسعه یک محصول با درخواست‌هایی از طرف همکاران یا دیگر گروه‌های مرتبط مواجه شده باشید که خواسته‌شان اضافه کردن یک امکان به محصول بوده باشد و شما به عنوان طراح محصول با آن موافقت یا مخالف کرده باشید. این موافقت یا مخالفت به معنی اولویت‌بندی امکانات مختلف برای توسعه و طراحی از طرف شما است.

در روند طراحی محصولات دیجیتال، این درخواست‌ها از طرف گروه‌های مختلف داخلی یا خارجی مانند کاربران، مالکان محصول، سرمایه‌گذاران و دیگران ارائه می‌شود. برای اینکه بتوانید این درخواست‌ها و نیازها را مدیریت کرده و برای طراحی اولویت بندی و مدیریت کنید، به روشی کارا و بهینه نیاز خواهید داشت.

در این مقاله شش روش مختلف برای این منظور معرفی شده‌اند که از جنبه‌های مختلف به اولیت‌بندی امکانات محصول می‌پردازند. برخی از این روش‌ها با استفاده از امتیازدهی، امکانات مد نظر را اولویت‌بندی می‌کنند و برخی دیگر به شما کمک می‌کنند تا متوجه شوید که چرا یکی از امکانات از دیگری مهم‌تر است. در ادامه توضیح مختصری درباره این روش‌ها ارائه شده است.

۱- مدل کانو (Kano Model): این روش، ترجیحات مشتری را در ۵ دسته مختلف شامل «ابتدایی»، «عملکردی»، «سرگرم‌کننده»، «بی‌تفاوت» و «معکوس» دسته‌بندی می‌کند. در ادامه با بررسی امکانات مد نظر و ارزیابی آنها بر مبنای این دسته‌بندی، اولویت هریک از آنها را نشان می‌دهد.

۲- روش RICE: این روش با استفاده از چهار فاکتور «دسترسی»، «تاثیر»، «اطمینان» و «تلاش» امتیازی را برای هریک از امکانات مد نظر محاسبه می‌کند و در اولیت‌بندی آنها به شما کمک خواهد کرد.

۳- ماتریس تلاش-تاثیر: این روش که با عنوان ماتریس ارزش-پیچیدگی نیز شناخته می‌شود، ابزاری نسبتا ساده برای اولویت‌بندی است. بر مبنای این ماتریس دو وجهی، امکانات مختلف بر مبنای میزان تلاش مورد نیاز برای توسعه یک عملکرد و تاثیر آن در چهار دسته مختلف طبقه‌بندی می‎شوند.

۴- روش MoSCOW: این روش که بیشتر در توسعه نرم‌افزار کاربرد دارد، نیازها را در چهار دسته «حتما باید باشد»، «باید باشد»، «می‌تواند باشد» و «نیازی نیست باشد» طبقه‌بندی می‌کند. این روش، روشی مناسب برای اولویت‌بندی نیازهای حساس به زمان در چارچوب زمانی ثابت است تا اطمینان حاصل شود که مهم‌ترین قسمت‌ها زودتر توسعه داده می‌شوند.

۵- اولویت‌بندی WSJF: این روش که نام آن مخفف عبارت «Weighted Shortest Job First» است، معادله‌ای متشکل از چهار مولفه برای رتبه‌بندی امکانات است. این مولفه‌ها شامل «ارزش کاربر-بیزینس»، «بحران زمانی»، «کاهش ریسک و یا ایجاد شانس» و «حجم کار» است. با محاسبه این فاکتور برای نیازهای مختلف، می‌توان آنها را اولویت‌بندی کرد.

۶- ماتریس آیزنهاور: این ماتریس نیز به شکلی است که با طبقه‌بندی امکانات و نیازها در چهار دسته مختلف شامل «انجام دادن»، «زمان‌بندی»، «حواله کردن» و «حذف کردن» مهم‌ترین امکانات برای طراحی و توسعه را مشخص می‌کند.

برای آشنایی دقیق‌تر با این روش‌ها و به کار بردن آنها می‌توانید مقاله زیر را مطالعه کنید:

https://bit.ly/dxgn655

(زمان حدودی مطالعه: ۱۵ دقیقه)

نویسنده: محمدرضا پناهی

#طراحی_محصول #اولویت‌بندی
@Dexign فلسفه دیزاین

_____
👍1
سومین #گپ_تکنیکال «فلسفه نرم‌افزار»
با موضوع: «Software Architecture: Performance»

همونطور که می‌دونین تلگرام امکان Voice Chat رو به کانال‌ها اضافه کرده، امکانی که تجربه خیلی جالبی رو به تلگرام می‌ده که خیلی مشابه Clubhouse هست و باعث می‌شه بتونیم گپ‌های باحالی با هم بزنیم. انگار رفتیم و تو یه کافه نشستیم و با هم گپ تکنیکال می‌زنیم.

ما هم تصمیم گرفتیم گپ تکنیکال رو از طریق همین ابزار برگزار کنیم.
تو این دورهمی #مهران_داودی و #یاسر_مرادی هم صحبت خواهند کرد.

فردا دوشنبه، ۲۷ اردیبهشت، ساعت ۱۹:۰۰ منتظرتون هستیم. حتما تلگرامتون رو آپدیت کنین و برای اینکه اون تایم یادتون نره می‌تونین کانال (@SoftwarePhilosophy) رو تو تلگرامتون پین کنین که موقع شروع متوجه بشید.

@SoftwarePhilosophy

______
Live stream scheduled for
Live stream started
Live stream finished (1 hour)
Software Philosohpy Talk 03
Software Philosophy
سومین #گپ_تکنیکال «فلسفه نرم‌افزار»
با موضوع: «Software Architecture: Performance»

با حضور
#مهران_داودی
#یاسر_مرادی

لطفا نظرتون رو هم در مورد گپ این هفته بنویسید برامون :)

@SoftwarePhilosophy
@SoftwarePhilosophy
@SoftwarePhilosophy
اگه قصد نوشتن برنامه کنسولی ای دارید می‌تونید از کتابخونه spectre.console (لینک گیت‌هاب) استفاده کنید.

این کتابخانه کارهای زیادی انجام می‌ده، مثل:
رنگ‌های زیبا
ساخت جداول
استفاده از ایموجی‌ها و ...

کار کردن با این کتابخانه آسونه و این لینک، داکیومنت نحوه استفاده ازش رو نشون می‌ده.

برای شروع می‌تونید بعد از نصب از این مثال استفاده کنید:

AnsiConsole.Markup("[underline red]Hello[/] [green]World![/]");

یکی دیگه از فوایدش استفاده از عبارات سوال جوابی‌ست، مثلا ایجاد یک چنین جمله‌ای:

What's your favorite fruit? [Apple/Banana/Orange] (Orange): _

توضیحات تکمیلی را در زیر بخوانید:

https://github.com/spectresystems/spectre.console

https://spectresystems.github.io/spectre.console/quick-start

⁉️ برای بحث و تبادل نظر فنی در مورد این پست، برروی دکمه «نظرت را بگو» کلیک کنید.

#حامد_حاجیلو (لینکدین)

کانال تلگرام:
@SoftwarePhilosophy

________
آشنایی با ngFor در انگولار

یکی از directive های پرکاربرد در انگولار، ngFor است که می‌توانیم با لیستی از دیتاها یک لیست از المنت‌های DOM ایجاد کنیم.

در حالت پیشفرض وقتی که از ngFor استفاده می‌کنیم، با کوچکترین تغییر در رفرنس لیست دیتاها، تمام المنت‌های ایجاد شده‌ی DOM، حذف و از نو ساخته می‌شوند. دلیل این موضوع این است که با تغییر رفرنس یک آبجکت، انگولار آن را یک آبجکت کاملا متفاوت می‌بیند و برای همین دوباره از نو لیست را رندر می‌کند.
این کار در زمان ناچیزی انجام می‌شود، به طوری که یک کاربر عادی متوجه ایجاد دوباره لیست نمی‌شود ولی در لیستی که دیتاهایی با حجم بسیار بالا دارند این کار سرعت برنامه را تحت تاثیر قرار می‌دهد.

یکی از ابزار های بسیار خوب انگولار برای ngFor ابزاری به اسم trackBy است.
شکل استفاده از trackBy به این صورت است که در ngFor یک تابع را به trackBy می‌دهیم و این تابع باید آیدی‌های منحصر به فرد مربوط به دیتاهای لیست را برگرداند.
به این صورت، هر بار فقط تغییرایی در DOM ایجاد می‌شوند که در لیست ایجاد شده باشند (حتی با تغییر رفرنس آبجت‌ها).

در انگولار استفاده از TrackBy یک best practice است و با این قابلیت قدرتمند و جالب توصیه می‌کنم استفاده شود.

نحوه استفاده و مثال کامل را در لینک زیر ببینید:

https://jinalshah999.medium.com/trackby-with-ngfor-directives-in-angular-application-bd4d0db288eb

⁉️ برای بحث و تبادل نظر فنی در مورد این پست، برروی دکمه «نظرت را بگو» کلیک کنید.

#حسن_یوسفی (لینکدین)

کانال تلگرام:
@SoftwarePhilosophy

________
ولی روی کامپیوتر من کار می‌کنه ...؛ خاطرات قبل از Angular9

زمانیکه به عنوان frontend developer در کنار چند نفر از دوستان دیگر کار می‌کردم، یکی از قوانین کاریمان این بود که قبل از git push کردن تغیرات، حتما برنامه را در مود production، نیز اجرا و تست کنیم. اما چرا اینکار لازم بود؟

پاسخ در این نکته است، که انگولار ورژن 8، بسته به روش کامپایل (JIT یا AOT)، توانمندی متفاوتی در type checking در template file ها داشت. محیط توسعه از JIT استفاده می‌کرد و محیط deployment از AOT. اینگونه بود که روی کامپیوتر من کار می‌کرد و بعد از دیپلوی شدن نه!

از ورژن 9 به بعد، دستورات ng build و ng serve نیز از Ahead Of Time Compilation استفاده می‌کنند، این امر کمک می‌کند در حین بیلد در زمان توسعه،متوجه باگ‌هایی شویم، که تا پیش از این تا زمان کامپایل در مود production نادیده گرفته می‌شدند.

این همه‌ی داستان نیست، قابلیت Strict Templates در انگولار ورژن 9، می‌تواند باگ‌هایی را در زمان build پیدا کند، که تا قبل از این نسخه، حتی در مود production نیز، از چشم پنهان می‌ماندند. اما برای استفاده از این قابلیت جدید (Strict Templates) علاوه بر آپگرید به ورژن 9 و بالاتر، باید کانفیگ کامپایلر انگولار را نیز ویرایش کنید. کافی است در فایل tsconfig، تنظیمات زیر را به کانفیگ کامپایلر انگولار اضافه کنید:

"angularCompilerOptions": {
"strictTemplates": true,
"strictInjectionParameters": true
}

مقاله زیر از John Papa با بررسی چند سناریو، مزیت استفاده از قابلیت Strict Template در انگولار 9 را نشان می‌دهد.

Angular 9's Best Hidden Feature: Strict Template Checking (auth0.com)

⁉️
برای بحث و تبادل نظر فنی در مورد این پست، برروی دکمه «نظرت را بگو» کلیک کنید.

#شهریار_سلجوقی (لینکدین)

کانال تلگرام:
@SoftwarePhilosophy

________
Forwarded from فلسفه دیزاین
گاف‌های مدیران محصول شرکت‌های معتبر

محصولات بد همه جا هستند. کالاهایی که مفید نیستند، درست کار نمی‌کنند و یا اینکه فرآیند فروش آنها بسیار زمان‌بر پیش می‌رود. برای پیشگیری از مواجهه با این قبیل مشکلات باید توجه داشته باشید که موفقیت محصولات تابع پیشرفت درست عوامل زیادی است که یکی از مهمترین این عوامل عملکرد مناسب مدیر محصول می‌باشد. تجربه ثابت کرده است که برخی از مشکلات آسیب‌رسانی که به طور مکرر برای مدیران محصول اتفاق می‌افتد در عموم محصولات بد مشترک هسنتد.

به طور مثال تخمین زده می‌شود که از هر پنج محصول جدید، چهار محصول قادر به کسب موفقیت در وضع موجود بازار رقابتی نیستند. به همین دلیل آشنایی با انواع اشتباهات رایج در حوزه مدیریت محصول که می‌تواند منجر به قضاوت بد مدیران محصول و به تبع آن ایجاد ناامیدی‌های جدی در آنها و در نهایت شکست یک محصول جدید گردد؛ امری ضروری برای همه مدیران محصول کسب و کارهای مختلف است.

در مقاله جذاب امروز، نویسنده در مصاحبه با پنج مدیر محصول شرکت‌های معروفی همچون Pintrest ، Shopify ، HubSpot و ... از آنها خواسته است تا از اشتباهات خود بگویند و آنچه را که در نتیجه این اشتباهات آموخته‌اند با مخاطبین به اشتراک بگذارند. در ادامه شما را به خواندن این مقاله دعوت می‌کنیم.

https://bit.ly/dxgn662

(زمان مورد نیاز برای مطالعه: ۸ دقیقه)

نویسنده: نیما‌ حکیم‌رابط

#مدیریت‌محصول #اشتباهات
@Dexign فلسفه دیزاین

_____
Forwarded from DotNetZoom (محمد جواد ابراهیمی)
مقایسه تکنولوژی استفاده شده در شرکت های بزرگ برنامه نویسی دنیا

توسط این سایت می توانید بهترین تکنولوژی، ابزار ها و فریمورک های مورد استفاده در شرکت های بزرگ برنامه نویسی دنیا را مشاهده و با یکدیگر مقایسه کنید.
https://stackshare.io/

مثلا لینک زیر تکنولوژی ها و ابزاری های مورد استفاده در شرکت Airbnb را نمایش می دهد.
https://stackshare.io/airbnb/airbnb
___________
@DotNetZoom
Forwarded from Iran Agile
🎯 مربی چابک، با شیفت تیم و شرکت، خودش نیز باید شیفت پیدا کند

دو سال پیش کار خودم را با یک شرکت بزرگ مالی بعنوان مربی چابک شروع کردم، بعد از یکسال، مدیر واحد به من گفت که »تیمهای ما خودشان می‌توانند جلو بروند» این حس به من منتقل شد که من دیگر برای سازمان مفید و باارزش نیستم؟
این سوال باعث شد که فکر کنم، من نیز باید با شیفت تیم به مرحله بعدی، مهارت‌های جدیدی در خودم پرورش بدهم تا بتوانم به تیم خودم در وضعیت جدید کمک کنم.

اولین استیج چابکی، معمولا پایه‌های چابکی هست که با تمرین و پیاده سازی چارچوب هایی مثل اسکرام محقق می شود، اما متاسفانه بسیاری از مربی‌ها یا اسکرام مسترها، تا این مرحله برای تیم خودشان مفید هستند و تقریبا مهارت لازم برای مراحل بعدی ندارند
اما چابکی همین جا تمام نمی شود ...

داستان کامل را در لینک زیر مطالعه کنید 👇👇👇


https://www.agilealliance.org/resources/experience-reports/the-changing-role-of-the-agile-coach/

@iranagile
Forwarded from فلسفه دیزاین
چگونه طرح خود را ارائه کنیم؟ و بتوانیم به خوبی از آن دفاع کنیم.

هر طراح محصول باید بتواند محصول خود را به مشتریان یا مدیران ارائه کند. اما اسرار ارائه موفق محصول چیست؟

ارائه طراحی چیست؟

آیا این مربوط به یک رویداد سخنرانی عمومی است یا زندگی روتین یک طراح؟! جواب هر دو است. این نکته مهم است که طراحان در هر لحظه راه حل طراحی خود را ارائه می‌دهند. فارغ از اینکه شما در یک تیم کوچک یا شرکت بزرگ کار می‌کنید، همواره راه‌حل خود را برای هم‌تیمی‌های خود توصیف می‌کنید. برای مثال، شما یک برنامه کاربردی به نام XYZ می‌سازید و در برخی موارد باید یک نمونه‌ی اولیه از آن محصول بسازید. پس از اتمام، در حضور مدیر خود، کل عملکرد و جزئیات برنامه را نشان می‌دهید. بله، این یک ارائه است.

درک ارائه برای طراحان

اول از همه، باید این را در نظر داشته باشید که ارائه یک رویداد انفرادی نیست. درباره ارائه و سوال و جواب بعد از آن فکر کنید، خودتان را به عنوان معلم و مخاطبان را به عنوان شاگردان خود تصور کنید. این ساده‌ترین راه برای آماده‌سازی خود برای یک ارائه‌ی درست است.
چرا ما در مورد ارائه صحبت می‌کنیم؟! شما به عنوان یک طراح، محصول جدیدی را به نمایش بگذارید. بله، شما جزئیات محصول را همراه با سناریوهای کاربر، محدودیت‌های کسب وکار و … توصیف خواهید کرد، اما مردم متفاوت از شما فکر می‌کنند. برای مثال، می توانید مرحله تست را در نظر بگیرید. هنگامی که شما یک ویژگی را طراحی می‌کنید و دوست دارید آن را در میان مخاطبان خود تست کنید، اغلب مشاهده کرده‌اید که بسیاری از مردم خارج از سناریوی پیشنهادی شما فکر می‌کنند یا راه‌حل متفاوتی برای مشکل شما دارند. در ارائه نیز، شما یک راه‌حل پیشنهاد می‌دهید، اما مردم برخی جنبه‌های آن را روشن می‌کنند. شما نیز در مورد نظرهای متفاوت و مشابه آن‌ها می‌پرسید. درک تنوع کلید اصلی موفقیت برای یک طراح است چرا که همه‌ی ما ذهنیت متفاوتی داریم.

برای کسب اطلاع در مورد جنبه‌های مختلف یک ارائه موفق، همراه ما در ادامه‌ی این مقاله باشید!

https://bit.ly/dxgn671

(زمان حدودی مطالعه: ۷ دقیقه)

نویسنده: محمدرضا وفائی

#ارائه #طراح‌محصول #محصول #کاربر

@Dexign فلسفه دیزاین

_______
Forwarded from DotNetZoom (Ali)
❇️ معرفی چندین پروژه Starter Template برای ASP .NET Core و React - Vue - Angular

🔰پروژه های ASP .NET Core + React
▪️https://github.com/bradymholt/aspnet-core-react-template
ASP.NET Core 3.1 / React SPA Template App
▪️https://github.com/NickMaev/react-core-boilerplate
Powerful ASP.NET Core 3 templates with React, true server-side rendering and Docker support
▪️https://github.com/CodAffection/React-CRUD-with-Asp.Net-Core-Web-API
Full Stack React js CRUD with Asp.Net Core Web
▪️https://github.com/microsoft/AspNetCore-React-WebApp
ASP.NET Core backend + React frontend + Entity Framework Core + automated testing
▪️https://github.com/based-ghost/aspnet-core-react-redux-playground-template
SPA template built with ASP.NET Core 5.0 + React + Redux + TypeScript + Hot Module Replacement (HMR)
▪️https://github.com/NetCoreTemplates/react-spa
.NET 5.0 React Create App CLI Bootstrap App


🔰پروژه های ASP .NET Core + Vue
▪️https://github.com/TrilonIO/aspnetcore-Vue-starter
Asp.net Core & Vue.js (ES6) SPA Starter kit - Vuex, webpack, Web API, Docker, and more!
▪️https://github.com/SoftwareAteliers/asp-net-core-vue-starter
ASP.NET Core + Vue.js starter project
▪️https://github.com/danijelh/aspnetcore-vue-typenoscript-template
Template AspNetCore with Vue, Vue router, Vuex, TypeScript, Bulma, Sass and Jest
▪️https://github.com/NetCoreTemplates/vue-spa
.NET 5.0 Vue CLI Bootstrap App
▪️https://github.com/damienbod/AspNetCoreMvcVueJs
ASP.NET Core with Vue.js
▪️https://github.com/based-ghost/aspnet-core-vue-vuex-playground-template
SPA template built with ASP.NET Core 5.0 + Vue + Vuex + TypeScript + Hot Module Replacement (HMR)


🔰پروژه های ASP .NET Core + Angular
▪️https://github.com/TrilonIO/aspnetcore-angular-universal
ASP.NET Core & Angular Universal advanced starter - PWA w/ server-side rendering for SEO, Bootstrap, i18n internationalization, TypeScript, unit testing, WebAPI REST setup, SignalR, Swagger docs, and more!
▪️https://github.com/emonney/QuickApp
ASP.NET Core 3.1 / Angular 9 startup project template with complete login, user and role management. Plus other useful services for Quick Application Development
▪️https://github.com/FabianGosebrink/ASPNETCore-Angular-Ngrx
An ASP.NET Core WebAPI Demo with an Angular Client using Ngrx store and effects and Signalr
▪️https://github.com/jasontaylordev/SecureSpa
ASP.NET Core 3 + Angular 8 + ASP.NET Identity generated using .NET Core SDK
▪️https://github.com/DanWahlin/AngularCLI-ASPNET-Core-CustomersService
Example of integrating Angular with ASP.NET Core RESTful Services
▪️https://github.com/NetCoreTemplates/angular-spa
.NET 5.0 Angular 9 CLI Bootstrap App

________________
@DotNetZoom
Forwarded from Iran Agile
تیم من "ایده های " من رو قبول نمیکنه

فرض کنید شما مدیر/مالک محصول هستید، بر اساس نیاز بازار یا هر روشی دیگری نیازمندی ها را الویت بندی کردید، اما موقعی که آن را با تیم مطرح میکنید، تیم خیلی تمایل چندانی به این اولویت بندی نشان نمیدهد.
شما استرس میگیرید که چرا تیم با من همراه نیست؟

اما چه باید کرد؟

1- باهم ایده ها را خلق کنید
2- حضور داشته باشید، از روی ضعف با دیگران ارتباط نگیرید، مثلا "دائم، در حال عذرخواهی از دیگران نباشید..."
3- داستان گویی کنید

توضیحات بیشتر در مورد هر کدام از این موارد در لینک زیر 👇👇

https://www.lennysnewsletter.com/p/getting-buy-in

@iranagile
Forwarded from فلسفه دیزاین
کار در وضعیت ویژه

ماه‌هاست که وضعیت ویژه‌ای بر جهان حاکم است. مشخصا درباره بیماری کرونا صحبت می‌کنم.

از زمانی که کرونا جدی و جدی‌تر شد، خیلی از شرکت‌ها بخاطر حفاظت از جان کارمندان و کمتر کردن میزان خطری که آنها را تهدید می‌کند، اقدام به تغییر رویه کار به سمت کار از راه دور یا ریموت کار کردن، کردند.

همینطور که ریموت کار کردن مزایای جالبی مثل طی نکردن هر روز مسیر از خانه به سرکار یا برعکس و … دارد، اما می‌تواند به سمی تبدیل شود که روند کار روزانه شما را از کار می‌اندازد.

ریموت کار کردن مثل امتیازی ویژه است که شاید در شرایط بد و عجیبی به دنیا داده شده ولی مدیریت تاثیرات این تغییرات در زندگی روزمره ما شاید از هرچیز دیگری مهم‌تر باشد.

مقاله‌ای که امروز برای شما انتخاب کردم درباره تجربه یک طراح در زمینه ترکیب کار و زندگی و برنامه‌ریزی روزانه‌ای است که در زمان کرونا پیش گرفته.

خواندن این مقاله به هرکسی که ریموت کار می‌کند پیشنهاد می‌شود.

http://bit.ly/dxgn682-1

(زمان حدودی مطالعه: ۱۰ دقیقه)

نویسنده: آرش اصغری

#ریموت #تجربه_کاربری

@Dexign فلسفه دیزاین

______
Forwarded from کدهک
آموزش کار با CSS Isolation در ASP NET Core 6.0

https://youtu.be/kqdn7dzEyhk
1
یکی از بزرگ‌ترین چالش‌های کسب و کارها، عدم هماهنگی و وجود ارتباط موثر میان اعضای تیم‌های مختلف است. هماهنگ‌سازی بخش‌های مختلف یک بیزینس‌ را می‌توان به رهبری یک ارکسترای بزرگ تشبیه کرد؛ سازهای مختلف باید به گونه‌ای هدایت شوند که در نهایت، صدای یک قطعه‌ی کوک شنیده شود؛ اگر یکی از سازها به‌درستی رهبری نشود، تمام قطعه‌ی موسیقی خراب می‌شود.
سمینار ۴ ساعته‌ی 《رهبری ارکسترای تیم نرم‌افزاری و کسب‌وکار》، با هدف بررسی و ارائه‌ی راهکار برای این چالش بزرگ، ۲۴ام تیر ماه، برگزار خواهد شد.

در این سمینار مجازی، با بهره‌گیری از متخصص‌ترین سخنرانان حوزه‌ی کسب‌و‌کار و تکنولوژی، یاد می‌گیریم که چگونه بهترین تیم را بسازیم و اعضا را به درستی در کنار هم بچینیم،
چه مهارت‌های نرمی برای ارتباط با سایر اعضا مورد نیاز است،
چگونه با تیم‌های فنی و نرم‌افزاری به درستی ارتباط برقرار کنیم و از صحبت‌های تخصصی آن‌ها گیج نشویم،
و چگونه یک تیم نرم‌افزاری را به‌صورت حرفه‌ای ریموت کنیم.


زمان برگزاری:
۲۴ تیر ماه (همین فردا!)
ساعت ۱۰ الی ۱۴

برای دریافت اطلاعات بیش‌تر و ثبت‌نام، از طریق دایرکت و یا با شماره‌ی ۰۹۰۵۳۷۸۵۰۵۸ در ارتباط باشید.