#پست_مجدد این پست تا به حال بیش از ۴۰۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
با ایجاد هر تکنولوژی در دنیای نرم افزار ، انبوهی از قابلیتهای جدید ایجاد میشود که به توسعه دهندگان این امکان را میدهند تا برنامههایی با قابلیتهای بالا و کد کمتر ایجاد کنند . در لینک زیر 20 کتابخانه مبتنی بر .netcore معرفی شده است که هر برنامه نویسی ممکن است به آنها نیاز داشته باشد.
https://codinginfinite.com/best-top-dot-net-core-useful-libraries-open-source/
#شهریار_انتظام (http://ow.ly/qDN430nPiCg)
کانال تلگرام:
@SoftwarePhilosophy
___
https://codinginfinite.com/best-top-dot-net-core-useful-libraries-open-source/
#شهریار_انتظام (http://ow.ly/qDN430nPiCg)
کانال تلگرام:
@SoftwarePhilosophy
___
Coding Infinite
Best 20 dot Net Core Libraries Every Developer should know
In this article, I'm listing down some of the most useful but not very commonly used .Net Core Libraries that every developer needs to know.
Forwarded from DotNetZoom (محمد جواد ابراهیمی)
🔰 معرفی Deno.js (شاید جایگزین Nodejs !)
سال قبل در کنفرانس JSConf 2018 خالق Nodejs از ساخت آن اظهار پشیمانی کرد و در مورد تعدادی از مشکلات آن ارائه داشت
https://www.youtube.com/watch?reload=9&v=M3BM9TB-8yA
سپس ماه قبل در کنفرانس JS Fest 2019، محصول جدیدی به نام Deno.js را ارائه کرد که مشابه Nodejs یک Runtime جاوااسکریپت بر فراز موتور V8 کروم است ولی با زبان های Rust و TypeScript نوشته شدهاست.
https://github.com/denoland/deno
https://deno.land/
_______________
@IranAspMvc
سال قبل در کنفرانس JSConf 2018 خالق Nodejs از ساخت آن اظهار پشیمانی کرد و در مورد تعدادی از مشکلات آن ارائه داشت
https://www.youtube.com/watch?reload=9&v=M3BM9TB-8yA
سپس ماه قبل در کنفرانس JS Fest 2019، محصول جدیدی به نام Deno.js را ارائه کرد که مشابه Nodejs یک Runtime جاوااسکریپت بر فراز موتور V8 کروم است ولی با زبان های Rust و TypeScript نوشته شدهاست.
https://github.com/denoland/deno
https://deno.land/
_______________
@IranAspMvc
Forwarded from Iran Agile
تجربه و نمونه عملی پیاده سازی اسکرام گسترده با چارچوب LeSS در صنعت بیمه آلمان
http://bit.ly/2M2YqxQ
@iranagile
http://bit.ly/2M2YqxQ
@iranagile
Forwarded from فلسفه دیزاین
۱۰ قدم تا طراحی تعاملی بهتر
برای رسیدن به یک هدف، ابتدا لازم است آن هدف را بشناسیم. برای برقراری ارتباط بهتر بین یک محصول و انسان، نیازمند روشی از طراحی به نام طراحی تعاملی (Interaction Design) هستیم.
اجازه بدهید موضوع را به این شکل توضیح دهم، یک صندلی اداری را در نظر بگیرید:
حالت اوّل- صندلی را میتوان بلند کرد. پرتاب کرد. روی زمین کشید و یا برعکسش کرد.
حالت دوّم- چرخهای آن نشاندهندهی این هستند که میتوان صندلی را حرکت داد. دستهها نشاندهندهی این هستند که تو میتوانی دستانت را روی آن تکیه دهی. و در نهایت شکل کلّی آن نمایانگر آنست که قابل نشستن است.
دونالد نورمن، پروفوسور و نویسندهی کتاب The Design of Everyday Things برای حالت اوّل عنوان Affordance را آورده که به معنای چیزهایی که اشیاء، قابلیت انجام آن را دارند؛ و برای حالت دوّم نام Signifier میآورد به معنای چیزهایی که اشیاء، وظیفهی انجام آن را دارند.
طراحی تعاملی یعنی همین دقّت و ریزبینیهایی که طراحان تعاملی در کوشش ساخت آن هستند؛ یعنی شناخت انواع یک رابطه و ایجاد یک نوع معنادار آن بین محصول و انسان. این مهم، نیازمند ساختار و رفتار ویژهای است که در مقالهی امروز به بررسی قدم به قدم آن میپردازیم.
روشی در دنیای دیزاین که نه تنها دنیای کاری شما را متحول میکند بلکه زندگی شخصیتان نیز پیشرفت قابل توجّهی خواهد کرد.
http://bit.ly/dxgn506
نویسنده: حسین میرزاده
#طراحی_تعاملی #روش_شناسی #دونالد_نورمن
@Dexign فلسفه دیزاین
___
برای رسیدن به یک هدف، ابتدا لازم است آن هدف را بشناسیم. برای برقراری ارتباط بهتر بین یک محصول و انسان، نیازمند روشی از طراحی به نام طراحی تعاملی (Interaction Design) هستیم.
اجازه بدهید موضوع را به این شکل توضیح دهم، یک صندلی اداری را در نظر بگیرید:
حالت اوّل- صندلی را میتوان بلند کرد. پرتاب کرد. روی زمین کشید و یا برعکسش کرد.
حالت دوّم- چرخهای آن نشاندهندهی این هستند که میتوان صندلی را حرکت داد. دستهها نشاندهندهی این هستند که تو میتوانی دستانت را روی آن تکیه دهی. و در نهایت شکل کلّی آن نمایانگر آنست که قابل نشستن است.
دونالد نورمن، پروفوسور و نویسندهی کتاب The Design of Everyday Things برای حالت اوّل عنوان Affordance را آورده که به معنای چیزهایی که اشیاء، قابلیت انجام آن را دارند؛ و برای حالت دوّم نام Signifier میآورد به معنای چیزهایی که اشیاء، وظیفهی انجام آن را دارند.
طراحی تعاملی یعنی همین دقّت و ریزبینیهایی که طراحان تعاملی در کوشش ساخت آن هستند؛ یعنی شناخت انواع یک رابطه و ایجاد یک نوع معنادار آن بین محصول و انسان. این مهم، نیازمند ساختار و رفتار ویژهای است که در مقالهی امروز به بررسی قدم به قدم آن میپردازیم.
روشی در دنیای دیزاین که نه تنها دنیای کاری شما را متحول میکند بلکه زندگی شخصیتان نیز پیشرفت قابل توجّهی خواهد کرد.
http://bit.ly/dxgn506
نویسنده: حسین میرزاده
#طراحی_تعاملی #روش_شناسی #دونالد_نورمن
@Dexign فلسفه دیزاین
___
Medium
10 Steps to Interaction Design (IxD)
Are you transitioning from visual design, psychology or computer science or any other field (chemical engineering in my case) into Interaction design (IxD), UX or HCI? Then this post is for you. If…
Software Philosophy
Photo
یکی از کارهای جذذابی (با دو تا ذ) که اخیرا شروع کردم طراحی این دو تا دورهست:
- آموزش زبان فنی برای تیمهای بیزنسی.
- آموزش زبان بیزنس برای تیمهای فنی.
یکی از مشکلات اغلب افرادی که استارتاپ دارن، شرکت دارن و یا تو تیمی هستن که با تیمهای فنی کار میکنه، اینه که زبان مشترکی با تیمهای فنی ندارن. اصطلاحاتی میشنون که ارتباطش رو با موضوع متوجه نمیشن. برای همین همیشه حس ابهام یا حسهای دیگه نسبت به کار با تیمهای فنی دارن.
یه کار جذذاب اینه که به عنوان افراد بیزنسی تیم، حداقل دانش فنی که لازمه تا بتونیم راحتتر با تیمهای فنی تعامل کنیم رو یاد بگیریم. من به کمک دوستانم در مدرسه بازاریابی تهران این دوره رو به همین خاطر طراحی کردیم.
اگر یک بیزنسی هستین و با تیمهای فنی کار میکنین، این دوره تجربه خیلی جذذابی براتون خواهد بود و مطمئنا به پرفورمنس تیمتون خیلی کمک میکنه.
از طرف دیگه، اگر یک برنامهنویس هستید، مطمئن باشید که دنیای بیزنس برای ما برنامهنویسان یک دنیای جذاب و ناشناخته است. دنیایی که که با ادبیاتش آشنا بشیم، ساخت محصول و کار کردن با تیمهای بیزنسی، عوض شدن زمانها، نیازمندیها و خیلی چیزهای دیگه معنیدار میشه و کمک میکنه بتونیم به اتفاق هم راهحلهای بهتری برای مسائل بیزنسی پیدا کنیم. این کاری هست که دوره دوم قراره انجام بده.
اگر یک بیزنسی هستید که دوست دارین زبان تیمهای فنی رو بهتر یاد بگیرید،
اگر یک برنامهنویس هستید که دوست دارین زبان بیزنسی رو بهتر یاد بگیرید،
👈 برای اطلاعات بیشتر و رزرو در دوره با شماره 021-88677808 تماس بگیرید و یا از طریق دایرکت اینستاگرام در تماس باشید:
Instagram.com/tehranmarketing_school
#مهران_داودی (http://ow.ly/GwIl309lFEm)
کانال تلگرام:
@SoftwarePhilosophy
____
- آموزش زبان فنی برای تیمهای بیزنسی.
- آموزش زبان بیزنس برای تیمهای فنی.
یکی از مشکلات اغلب افرادی که استارتاپ دارن، شرکت دارن و یا تو تیمی هستن که با تیمهای فنی کار میکنه، اینه که زبان مشترکی با تیمهای فنی ندارن. اصطلاحاتی میشنون که ارتباطش رو با موضوع متوجه نمیشن. برای همین همیشه حس ابهام یا حسهای دیگه نسبت به کار با تیمهای فنی دارن.
یه کار جذذاب اینه که به عنوان افراد بیزنسی تیم، حداقل دانش فنی که لازمه تا بتونیم راحتتر با تیمهای فنی تعامل کنیم رو یاد بگیریم. من به کمک دوستانم در مدرسه بازاریابی تهران این دوره رو به همین خاطر طراحی کردیم.
اگر یک بیزنسی هستین و با تیمهای فنی کار میکنین، این دوره تجربه خیلی جذذابی براتون خواهد بود و مطمئنا به پرفورمنس تیمتون خیلی کمک میکنه.
از طرف دیگه، اگر یک برنامهنویس هستید، مطمئن باشید که دنیای بیزنس برای ما برنامهنویسان یک دنیای جذاب و ناشناخته است. دنیایی که که با ادبیاتش آشنا بشیم، ساخت محصول و کار کردن با تیمهای بیزنسی، عوض شدن زمانها، نیازمندیها و خیلی چیزهای دیگه معنیدار میشه و کمک میکنه بتونیم به اتفاق هم راهحلهای بهتری برای مسائل بیزنسی پیدا کنیم. این کاری هست که دوره دوم قراره انجام بده.
اگر یک بیزنسی هستید که دوست دارین زبان تیمهای فنی رو بهتر یاد بگیرید،
اگر یک برنامهنویس هستید که دوست دارین زبان بیزنسی رو بهتر یاد بگیرید،
👈 برای اطلاعات بیشتر و رزرو در دوره با شماره 021-88677808 تماس بگیرید و یا از طریق دایرکت اینستاگرام در تماس باشید:
Instagram.com/tehranmarketing_school
#مهران_داودی (http://ow.ly/GwIl309lFEm)
کانال تلگرام:
@SoftwarePhilosophy
____
Forwarded from DotNetZoom (محمد جواد ابراهیمی)
✅ حرفه ای ترین سلوشن Logging در NETCore. با استفاده از Serilog و ElasticSearch و Kibana
#PerformanceTuning
کتابخانه های مختلفی برای لاگ کردن خطا ها در دات نت وجود داره، از جمله Elmah، NLog, Log4net و ...
کتابخانه Elmah بهترین انتخاب برای پروژه های کوچک و متوسطه، کار باهاش راحته و پنل ساده ای هم داره، ولی توی پروژه های بزرگ که تعداد لاگ ها خیلی زیاد میشه، دیگه Elmah جوابگو نیست، هم به خاطر سرعت کمش نسبت به بقیه کتابخانه ها و هم به خاطر پنل ضعیف اش که حتی یه سرچ هم نداره
در این شرایط راه های مختلفی هست مثل استفاده از سرویس های نگهداری لاگ Cloud-based مثل setry.io , elmah.io و ...
راه حل بعدی استفاده از برنامه های مدیریت لاگ مثل Seq هستند که بر خلاف مورد قبلی، یک سرویس خارجی نیست و روی سرور خودتون لاگ ها رو نگهداری میکنه و داشبورد قدرتمندی برای سرچ و کوئری گرفتن در اختیارتون میذاره (ولی پولیه)
🔰 راه حل حرفه ای تر و البته رایگان، استفاده از Serilog و ElasticSearch و Kibana هست
🔸دیتابیس ElasticSearch در واقع یک دیتابیس NoSql و یک Search Engine (موتور جستجو) سورس باز و فوق سریع (بر پایه Lucene) هست که قابلیت جستجو و کوئری زدن زدن (به صورت full text search) با سرعت و قدرت بالا رو داره از اون برای نگهداری لاگ ها استفاده خواهیم کرد
🔹پنل Kibana هم یه پلاگین داشبور سورس باز و قدرتمند با امکانات زیاد برای نمایش اطلاعات دیتابیس Elastic هست و از اون برای نمایش خطا ها و جستجو کردن و نمودار گرفتن استفاده می کنیم
🔸 کتابخانه Serilog هم میشه گفت بهترین کتابخانه Logging هست. نسبت به NLog جدید تره و طراحی مدرن تری داره و میزان رشد محبوبیتش هم بیشتره؛ پس میشه گفت از NLog هم بهتره (البته خیلی اختلاف ندارند)
این کتابخونه قابلیت های زیادی داره که به لطف پلاگین های زیادی که برای Serilog وجود داره (اصطلاحا بهش میگن Sinks) براش فراهم شده و از لحاظ پرفرمنسی هم از NLog سریع تره.
🔹 تنها نکته مهم، استفاده از روش Structred Logging نسبت به حالت معمولی است. شاید فکر کنید دو دستور زیر هیچ تفاوتی نمیکنه!
ولی عملکرد این دو یکسان نبوده و خط دوم که به صورت Structred هست اطلاعات را به صورت جداگانه ضبط و ثبت میکنه درنتیجه در کنار متن خطا، یک فیلد به نام username با مقدار Ali نیز ذخیره میکنه که کار جستجو و کوئری زدن رو راحت تر میکنه
مقالات آموزش این سلوشن :
https://bit.ly/2EAjpTh
https://bit.ly/2EBUYFc
https://bit.ly/2X7g1Xn
https://bit.ly/2Exvs3C
مخزن نمونه کد :
https://github.com/thecarlo/elastic-kibana-netcore-serilog
___________
@IranAspMvc
#PerformanceTuning
کتابخانه های مختلفی برای لاگ کردن خطا ها در دات نت وجود داره، از جمله Elmah، NLog, Log4net و ...
کتابخانه Elmah بهترین انتخاب برای پروژه های کوچک و متوسطه، کار باهاش راحته و پنل ساده ای هم داره، ولی توی پروژه های بزرگ که تعداد لاگ ها خیلی زیاد میشه، دیگه Elmah جوابگو نیست، هم به خاطر سرعت کمش نسبت به بقیه کتابخانه ها و هم به خاطر پنل ضعیف اش که حتی یه سرچ هم نداره
در این شرایط راه های مختلفی هست مثل استفاده از سرویس های نگهداری لاگ Cloud-based مثل setry.io , elmah.io و ...
راه حل بعدی استفاده از برنامه های مدیریت لاگ مثل Seq هستند که بر خلاف مورد قبلی، یک سرویس خارجی نیست و روی سرور خودتون لاگ ها رو نگهداری میکنه و داشبورد قدرتمندی برای سرچ و کوئری گرفتن در اختیارتون میذاره (ولی پولیه)
🔰 راه حل حرفه ای تر و البته رایگان، استفاده از Serilog و ElasticSearch و Kibana هست
🔸دیتابیس ElasticSearch در واقع یک دیتابیس NoSql و یک Search Engine (موتور جستجو) سورس باز و فوق سریع (بر پایه Lucene) هست که قابلیت جستجو و کوئری زدن زدن (به صورت full text search) با سرعت و قدرت بالا رو داره از اون برای نگهداری لاگ ها استفاده خواهیم کرد
🔹پنل Kibana هم یه پلاگین داشبور سورس باز و قدرتمند با امکانات زیاد برای نمایش اطلاعات دیتابیس Elastic هست و از اون برای نمایش خطا ها و جستجو کردن و نمودار گرفتن استفاده می کنیم
🔸 کتابخانه Serilog هم میشه گفت بهترین کتابخانه Logging هست. نسبت به NLog جدید تره و طراحی مدرن تری داره و میزان رشد محبوبیتش هم بیشتره؛ پس میشه گفت از NLog هم بهتره (البته خیلی اختلاف ندارند)
این کتابخونه قابلیت های زیادی داره که به لطف پلاگین های زیادی که برای Serilog وجود داره (اصطلاحا بهش میگن Sinks) براش فراهم شده و از لحاظ پرفرمنسی هم از NLog سریع تره.
🔹 تنها نکته مهم، استفاده از روش Structred Logging نسبت به حالت معمولی است. شاید فکر کنید دو دستور زیر هیچ تفاوتی نمیکنه!
logger.Debug("UserName is : Ali");
logger.Debug("UserName is : {username}", "Ali");
ولی عملکرد این دو یکسان نبوده و خط دوم که به صورت Structred هست اطلاعات را به صورت جداگانه ضبط و ثبت میکنه درنتیجه در کنار متن خطا، یک فیلد به نام username با مقدار Ali نیز ذخیره میکنه که کار جستجو و کوئری زدن رو راحت تر میکنه
مقالات آموزش این سلوشن :
https://bit.ly/2EAjpTh
https://bit.ly/2EBUYFc
https://bit.ly/2X7g1Xn
https://bit.ly/2Exvs3C
مخزن نمونه کد :
https://github.com/thecarlo/elastic-kibana-netcore-serilog
___________
@IranAspMvc
#پست_مجدد این پست تا به حال بیش از ۱۲۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
شاید برای شما هم تا کنون پیش آمده باشد که در یک وب سایت با اشکال هندسی روبرو شوید که در #CSS تولید شده اند، یا حتی بخواهید در وب سایت خود این اشکال جالب را قرار دهید. یکی از شکلهای پرتکرار در وب سایتها، مثلث است که از آن در ایجاد انواع مختلف مثلث، جهتنما (فلش) و یا حتی جهتدار کردن اشکال دیگر استفاده میگردد.
لینک زیر به صورت بسیار مختصر و مفید، به همراه یک انیمیشن عالی، به توضیح نحوه ایجاد آن می پردازد:
https://bit.ly/1GzOIaN
همچینن در زیر، لینک یک تولید کننده مثلث در کد #CSS آورده شده است که بعد از مطالعه لینک بالا می توانید به راحتی از آن در طراحی های خود استفاده نمایید.
https://bit.ly/2W9NzDf
#محمدرضا_حاج_بابایی (http://ow.ly/PnEY30oq1sK)
کانال تلگرام:
@SoftwarePhilosophy
___
لینک زیر به صورت بسیار مختصر و مفید، به همراه یک انیمیشن عالی، به توضیح نحوه ایجاد آن می پردازد:
https://bit.ly/1GzOIaN
همچینن در زیر، لینک یک تولید کننده مثلث در کد #CSS آورده شده است که بعد از مطالعه لینک بالا می توانید به راحتی از آن در طراحی های خود استفاده نمایید.
https://bit.ly/2W9NzDf
#محمدرضا_حاج_بابایی (http://ow.ly/PnEY30oq1sK)
کانال تلگرام:
@SoftwarePhilosophy
___
CSS-Tricks
CSS Triangle
HTML You can make them with a single div. It's nice to have classes for each direction possibility. CSS The idea is a box with zero width and height. The
Forwarded from فلسفه دیزاین
لورم ایپسومها را بُکُش
شما چقدر مشتاق برخورد با فردی هستید که با روی خوش و سخنی زیبا با شما تعامل کند؟
جوابتان در قیاس با فردی که به شما اخم کرده و با حالتِ بیتفاوتی رفتار میکند چیست؟
رابط کاربری شما مستثنی ازین موضوع نیست و برای تعامل بهتر، دقیقا باید مانند رفتار و گفتار یک انسان خوشسخن باشد.
نویسندگیِ تجربهی کاربری یا UX Writing یکی از هنرهاییست که هر دیزاینری در حین دیزاین باید توجه ویژهای به آن بکند.
اخیرا برای کاری، مشغول انواع طرحهای بیمهنامههای مختلف بودم. طبق عادت تنبلی همیشگی و همینطور کمبود وقت، از متون آمادهی لورم ایپسوم استفاده کردم. مشکل جایی خودش را نشان داد که دیزاین با کافرما بررسی شد و بعدا متون طرحها در اختیارما قرار داده شد. هر طرح شامل هزاران کلمه بود که برای مقایسه باهم دیگر نیاز به پیادهسازی مناسب داخل دیزاین داشت.
اما چطور باید توجه کاربری را که عادت به نخواندن متن داشته و به جای آن فقط با چشمانش اسکن میکند، به این متون مهم جلب کرد؟
یا زمانی که مشغول مهمترین دکمهی CTA بودم؛ بین "بررسی قیمتها" یا "خرید بیمهنامه" باید کدام را انتخاب کنم؟
دقیقا مثل زمانی که شما در جلسهی مهم کاری هستید. هر کلامی به زبان بیاورید، عواقب خوب یا بد دارد.
پس شما تنها با عوض کردن یک کلمه میتوانید، یک شرکت را نجات دهید یا باعث سقوط آن شوید.
قبلا در کانال دربارهی اینکه چطور پیغامهای خطا را بنویسیم اشارهای داشتیم:
https://news.1rj.ru/str/Dexign/277
حال در مقالهی امروز، نویسنده سعی بر این داشته است که با مثالهای مختلف یک قاعدهی کلی برای این موضوع مطرح کند:
http://bit.ly/dxgn513
چه بسا که نوشتار و ارتباط یک مجموعه با کاربران آن، بسیار فراتر ازین قواعد است. و مهمترین پیوند زنندهی هر اپلیکیشین یا وبسایتی با کاربران آن، داشتن و رعایت کردن یک داستان منسجم با روایت خاص خود آن مجموعه است.
نویسنده: حسین میرزاده
(زمان حدودی مطالعه، ۸ دقیقه)
#تجربه_کاربری #تعامل #کپی_نویسی
@Dexign فلسفه دیزاین
ــــــــــ
شما چقدر مشتاق برخورد با فردی هستید که با روی خوش و سخنی زیبا با شما تعامل کند؟
جوابتان در قیاس با فردی که به شما اخم کرده و با حالتِ بیتفاوتی رفتار میکند چیست؟
رابط کاربری شما مستثنی ازین موضوع نیست و برای تعامل بهتر، دقیقا باید مانند رفتار و گفتار یک انسان خوشسخن باشد.
نویسندگیِ تجربهی کاربری یا UX Writing یکی از هنرهاییست که هر دیزاینری در حین دیزاین باید توجه ویژهای به آن بکند.
اخیرا برای کاری، مشغول انواع طرحهای بیمهنامههای مختلف بودم. طبق عادت تنبلی همیشگی و همینطور کمبود وقت، از متون آمادهی لورم ایپسوم استفاده کردم. مشکل جایی خودش را نشان داد که دیزاین با کافرما بررسی شد و بعدا متون طرحها در اختیارما قرار داده شد. هر طرح شامل هزاران کلمه بود که برای مقایسه باهم دیگر نیاز به پیادهسازی مناسب داخل دیزاین داشت.
اما چطور باید توجه کاربری را که عادت به نخواندن متن داشته و به جای آن فقط با چشمانش اسکن میکند، به این متون مهم جلب کرد؟
یا زمانی که مشغول مهمترین دکمهی CTA بودم؛ بین "بررسی قیمتها" یا "خرید بیمهنامه" باید کدام را انتخاب کنم؟
دقیقا مثل زمانی که شما در جلسهی مهم کاری هستید. هر کلامی به زبان بیاورید، عواقب خوب یا بد دارد.
پس شما تنها با عوض کردن یک کلمه میتوانید، یک شرکت را نجات دهید یا باعث سقوط آن شوید.
قبلا در کانال دربارهی اینکه چطور پیغامهای خطا را بنویسیم اشارهای داشتیم:
https://news.1rj.ru/str/Dexign/277
حال در مقالهی امروز، نویسنده سعی بر این داشته است که با مثالهای مختلف یک قاعدهی کلی برای این موضوع مطرح کند:
http://bit.ly/dxgn513
چه بسا که نوشتار و ارتباط یک مجموعه با کاربران آن، بسیار فراتر ازین قواعد است. و مهمترین پیوند زنندهی هر اپلیکیشین یا وبسایتی با کاربران آن، داشتن و رعایت کردن یک داستان منسجم با روایت خاص خود آن مجموعه است.
نویسنده: حسین میرزاده
(زمان حدودی مطالعه، ۸ دقیقه)
#تجربه_کاربری #تعامل #کپی_نویسی
@Dexign فلسفه دیزاین
ــــــــــ
یکی از معظلات سازمانها جلسات طولانی است. یکی از دلایل این جلسات پی در پی، موثر نبودن جلسات است که باعث میشود دوباره آن موضوع در جلسه دیگر پیگیری شود.
بعضی افراد مدت زمان زیادی را در جلسات هستند و فرصت انجام کارهای دیگر را از دست میدهند.
در شرکت آمازون روش جالبی وجود دارد، قبل از جلسه یک سند 6 صفحهای آماده میشود، در طی جلسه به افراد یک فرصت ۲۰ دقیقهای داده میشود تا آنرا در سکوت مطالعه کنند و بعد نوبت به کامنتگذاری میرسد، افراد میتوانند در هرجای سند که مایل بودند نظر خود را بنویسند، این کار هم در سکوت انجام میشود. سپس این کامنتها جمع آوری میشود و در مورد آنها صحبت میکنند. تقریبا مدت زیادی از جلسات در سکوت میگذرد .
لینک زیر این مسئله را شرح میدهد :
https://medium.com/swlh/the-silent-meeting-manifesto-v1-189e9e3487eb
#شهریار_انتظام (http://ow.ly/qDN430nPiCg)
کانال تلگرام:
@SoftwarePhilosophy
___
بعضی افراد مدت زمان زیادی را در جلسات هستند و فرصت انجام کارهای دیگر را از دست میدهند.
در شرکت آمازون روش جالبی وجود دارد، قبل از جلسه یک سند 6 صفحهای آماده میشود، در طی جلسه به افراد یک فرصت ۲۰ دقیقهای داده میشود تا آنرا در سکوت مطالعه کنند و بعد نوبت به کامنتگذاری میرسد، افراد میتوانند در هرجای سند که مایل بودند نظر خود را بنویسند، این کار هم در سکوت انجام میشود. سپس این کامنتها جمع آوری میشود و در مورد آنها صحبت میکنند. تقریبا مدت زیادی از جلسات در سکوت میگذرد .
لینک زیر این مسئله را شرح میدهد :
https://medium.com/swlh/the-silent-meeting-manifesto-v1-189e9e3487eb
#شهریار_انتظام (http://ow.ly/qDN430nPiCg)
کانال تلگرام:
@SoftwarePhilosophy
___
Medium
The Silent Meeting Manifesto v1: Making meeting suck a little less
Making meeting suck a little less
Forwarded from DotNetZoom (محمد جواد ابراهیمی)
❇️ معرفی برترین کتابخانه های Task Scheduling (انجام کار های پس زمینه) در دات نت
برای این کار راه های مختلفی هست
1️⃣ کلاس Generic Host و BackgrounService :
در ساده ترین حالت توسط قابلیت های تو کار خود ASP Core میتونین اینکارو انجام بدین
https://www.dotnettips.info/post/2997
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-2.2
2️⃣ کتابخانه Coravel :
مزیت این کتابخانه اینه که DI رو به صورت داخلی ساپورت میکنه (بر خلاف FluentScheduler) [گزینه مورد علاقه خودم - ساده و سبک ولی مدرن]
https://github.com/jamesmh/coravel
https://docs.coravel.net
3️⃣ کتابخانه FluentScheduler
https://github.com/fluentscheduler/FluentScheduler
4️⃣ کتابخانه Hangfire :
بهترین گزینه برای پروژه های بزرگ (خیلی حرفه ای و full-feature هست)
یک پنل داشبوری برای نمایش لیست کار های زمان بندی شده به همراه وضعیتشون بهتون میده که میتونین تسک ها رو غیر فعال کنین یا گزارش ازشون بگیرین و...
https://www.hangfire.io/
https://github.com/HangfireIO/Hangfire
5️⃣ کتابخانه DNTScheduler.Core :
نویسنده این کتابخانه وحید نصیری عزیز هستش
https://github.com/VahidN/DNTScheduler.Core
https://www.dotnettips.info/post/1736
6️⃣کتابخانه Quartz.Net :
این کتابخانه port شده از معادل جاواییش هست و code quality خوبی نداره و طراحیش هم مدرن نیست (کلا پیشنهاد نمیکنم تا گزینه های بهتری هست)
http://www.quartz-scheduler.net/
https://github.com/quartznet/quartznet
✅ همه این کتابخانه ها از Cron پشتیبانی میکنن
در واقع Cron یه سینتکس دستوری واسه زمان بندی کار ها هست که قوائد خاص خودش رو داره (اسامی CronTab و CronJob هم از همین خانوادس)
مثلا برای اینکه یه تسک هر ۱۵ دقیقه یک بار انجام بشه، دستور Cron اش میشه
توی سایت زیر که یک محیط تعاملی برای نوشتن دستور Cron هست میتونین با قوائد و مثال هاش بیشتر آشنا بشین
https://crontab.guru/#*/15_*_*_*_*
____________
@IranAspMvc
برای این کار راه های مختلفی هست
1️⃣ کلاس Generic Host و BackgrounService :
در ساده ترین حالت توسط قابلیت های تو کار خود ASP Core میتونین اینکارو انجام بدین
https://www.dotnettips.info/post/2997
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-2.2
2️⃣ کتابخانه Coravel :
مزیت این کتابخانه اینه که DI رو به صورت داخلی ساپورت میکنه (بر خلاف FluentScheduler) [گزینه مورد علاقه خودم - ساده و سبک ولی مدرن]
https://github.com/jamesmh/coravel
https://docs.coravel.net
3️⃣ کتابخانه FluentScheduler
https://github.com/fluentscheduler/FluentScheduler
4️⃣ کتابخانه Hangfire :
بهترین گزینه برای پروژه های بزرگ (خیلی حرفه ای و full-feature هست)
یک پنل داشبوری برای نمایش لیست کار های زمان بندی شده به همراه وضعیتشون بهتون میده که میتونین تسک ها رو غیر فعال کنین یا گزارش ازشون بگیرین و...
https://www.hangfire.io/
https://github.com/HangfireIO/Hangfire
5️⃣ کتابخانه DNTScheduler.Core :
نویسنده این کتابخانه وحید نصیری عزیز هستش
https://github.com/VahidN/DNTScheduler.Core
https://www.dotnettips.info/post/1736
6️⃣کتابخانه Quartz.Net :
این کتابخانه port شده از معادل جاواییش هست و code quality خوبی نداره و طراحیش هم مدرن نیست (کلا پیشنهاد نمیکنم تا گزینه های بهتری هست)
http://www.quartz-scheduler.net/
https://github.com/quartznet/quartznet
✅ همه این کتابخانه ها از Cron پشتیبانی میکنن
در واقع Cron یه سینتکس دستوری واسه زمان بندی کار ها هست که قوائد خاص خودش رو داره (اسامی CronTab و CronJob هم از همین خانوادس)
مثلا برای اینکه یه تسک هر ۱۵ دقیقه یک بار انجام بشه، دستور Cron اش میشه
*/15 * * * *
توی سایت زیر که یک محیط تعاملی برای نوشتن دستور Cron هست میتونین با قوائد و مثال هاش بیشتر آشنا بشین
https://crontab.guru/#*/15_*_*_*_*
____________
@IranAspMvc
#پست_مجدد این پست تا به حال بیش از ۱۱۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
ما همیشه به دنبال آپدیت کردن نسخه سیستم عاملهایمان هستیم. اما به عنوان developer آیا به دنبال آپدیت بودن نسخه فریمورکی که از آن استفاده میکنیم نیز هستیم؟
ما نباید از قافله عقب باشیم و اگر از فریمورکی استفاده میکنیم، میبایست همیشه به دنبال استفاده از آخرین نسخه و امکانات آن باشیم.
در استفاده از ریاکت ۱۶ به جای ریاکت ۱۵ مسایل زیادی وجود دارد که باید در نظر گرفته شوند.
این مقاله به شما کمک میکند با ری اکت ۱۵ خداحافظی کنید و به روز شوید!
https://medium.freecodecamp.org/why-react16-is-a-blessing-to-react-developers-31433bfc210a
#مریم_کمالی (http://ow.ly/9Wa430mFGeK)
کانال تلگرام:
@SoftwarePhilosophy
___
ما نباید از قافله عقب باشیم و اگر از فریمورکی استفاده میکنیم، میبایست همیشه به دنبال استفاده از آخرین نسخه و امکانات آن باشیم.
در استفاده از ریاکت ۱۶ به جای ریاکت ۱۵ مسایل زیادی وجود دارد که باید در نظر گرفته شوند.
این مقاله به شما کمک میکند با ری اکت ۱۵ خداحافظی کنید و به روز شوید!
https://medium.freecodecamp.org/why-react16-is-a-blessing-to-react-developers-31433bfc210a
#مریم_کمالی (http://ow.ly/9Wa430mFGeK)
کانال تلگرام:
@SoftwarePhilosophy
___
freeCodeCamp.org
Why React16 is a blessing to React developers
By Harsh Makadia Just like how people are excited about updating their mobile apps and OS, developers should also be excited to update their frameworks. The new version of the different frameworks come with new features and tricks out of the box. Bel...
Forwarded from فلسفه دیزاین
کاربرپژوهی و روشهای آن
ما به عنوان طراحان محصول، بیشترین مسئولیت را در قبال افرادی داریم که از محصول استفاده میکنند. اگر کاربران را به خوبی نشناسیم، چگونه میتوانیم محصول مناسبی برای آنها طراحی کنیم. بدون تحقیقات لازم، تمرکز بر نیازها و خواستههای کاربران ناممکن است. در اینجا این سوال مطرح میشود که کاربرپژوهی در طراحی محصول دقیقا چیست و چه روشهایی دارد؟
در روند طراحی محصول پس از مشخصشدن چشمانداز، به مرحله تحقیقات کلی میرسیم که از دو بخش تحقیقات کاربر و تحقیقات بازار تشکیل میشود. تحقیقات کاربر، پژوهشی سیستماتیک از کاربران و خواستههای آنان است که به منظور افزایش بینش طراحان در روند فرآیند طراحی تجربه کاربری کاربرد دارد. هدف از این پژوهش سیستماتیک یافتن عواملی است که اصول تجربه کاربری را شکل میدهند. تحقیقات در مورد کاربر، مهمترین کلید طراحی یک تجربه کاربری عالی است. طراحان با بهرهگیری از تکنیکها، ابزارها و دیگر روشها برای رسیدن به هدف نهایی، که همان تعیین حقایق و کشف مشکلات احتمالی کاربر است استفاده میکنند.
در حوزه طراحی محصول، روشهای متفاوتی جهت انجام کاربرپژوهی وجود دارد که شامل روشهای کیفی و کمی میشود. از جمله تحقیقات متنی، مطالعه روزنامه، مصاحبه با افراد شامل مصاحبه مستقیم، غیرمستقیم و قومیتی (Ethnographic interviews)، استفاده از نظرسنجی آنلاین، تحقیقات بازار (رقبای مستقیم و غیرمستقیم)، تحقیقات وابسته به شواهد و قرائن، دستهبندی کارتها (Card Sorts)، آزمایش قابلیت استفاده (Usability Tests) و ... میشود.
در این روشها بیشتر تمرکز بر رویکرد سیستماتیک جمعآوری اطلاعات و تفسیر دادههای جمعآوری شدهاست. به همين علت، پژوهش کاربری مستلزم انتخاب ساختاری مشخص و روشی اصولی و همچنین استفاده از ابزارهای مناسب جهت جمعآوری اطلاعات میباشد.
تحقیقات موثر، باعث میشود طراحان و صاحبان سرمایه اطلاعات ارزشمندی در ابتدای شروع مسیر کسب و کار بدست آورند و در نهایت هزینههای تولید یک محصول موفق را کاهش میدهند. مشخصاً اگر از مراحل اولیه و با آگاهی بالا کار تحقیقات صورت گیرد، بعدها به تغییرات و اصلاحات هزینهبر کمتری نیاز خواهد بود. بنابراین اگر میخواهید شانس موفقیت محصولتان افزایش یابد، باید تلاش کنید در گام نخست پروژه تحقیقات دقیقی انجام دهید.
http://bit.ly/dxgn520
(زمان حدودی مطالعه، ۱۰ دقیقه)
نویسنده: نیما حکیمرابط
#کاربرپژوهی #طراحی_محصول #روش
@Dexign فلسفه دیزاین
______
ما به عنوان طراحان محصول، بیشترین مسئولیت را در قبال افرادی داریم که از محصول استفاده میکنند. اگر کاربران را به خوبی نشناسیم، چگونه میتوانیم محصول مناسبی برای آنها طراحی کنیم. بدون تحقیقات لازم، تمرکز بر نیازها و خواستههای کاربران ناممکن است. در اینجا این سوال مطرح میشود که کاربرپژوهی در طراحی محصول دقیقا چیست و چه روشهایی دارد؟
در روند طراحی محصول پس از مشخصشدن چشمانداز، به مرحله تحقیقات کلی میرسیم که از دو بخش تحقیقات کاربر و تحقیقات بازار تشکیل میشود. تحقیقات کاربر، پژوهشی سیستماتیک از کاربران و خواستههای آنان است که به منظور افزایش بینش طراحان در روند فرآیند طراحی تجربه کاربری کاربرد دارد. هدف از این پژوهش سیستماتیک یافتن عواملی است که اصول تجربه کاربری را شکل میدهند. تحقیقات در مورد کاربر، مهمترین کلید طراحی یک تجربه کاربری عالی است. طراحان با بهرهگیری از تکنیکها، ابزارها و دیگر روشها برای رسیدن به هدف نهایی، که همان تعیین حقایق و کشف مشکلات احتمالی کاربر است استفاده میکنند.
در حوزه طراحی محصول، روشهای متفاوتی جهت انجام کاربرپژوهی وجود دارد که شامل روشهای کیفی و کمی میشود. از جمله تحقیقات متنی، مطالعه روزنامه، مصاحبه با افراد شامل مصاحبه مستقیم، غیرمستقیم و قومیتی (Ethnographic interviews)، استفاده از نظرسنجی آنلاین، تحقیقات بازار (رقبای مستقیم و غیرمستقیم)، تحقیقات وابسته به شواهد و قرائن، دستهبندی کارتها (Card Sorts)، آزمایش قابلیت استفاده (Usability Tests) و ... میشود.
در این روشها بیشتر تمرکز بر رویکرد سیستماتیک جمعآوری اطلاعات و تفسیر دادههای جمعآوری شدهاست. به همين علت، پژوهش کاربری مستلزم انتخاب ساختاری مشخص و روشی اصولی و همچنین استفاده از ابزارهای مناسب جهت جمعآوری اطلاعات میباشد.
تحقیقات موثر، باعث میشود طراحان و صاحبان سرمایه اطلاعات ارزشمندی در ابتدای شروع مسیر کسب و کار بدست آورند و در نهایت هزینههای تولید یک محصول موفق را کاهش میدهند. مشخصاً اگر از مراحل اولیه و با آگاهی بالا کار تحقیقات صورت گیرد، بعدها به تغییرات و اصلاحات هزینهبر کمتری نیاز خواهد بود. بنابراین اگر میخواهید شانس موفقیت محصولتان افزایش یابد، باید تلاش کنید در گام نخست پروژه تحقیقات دقیقی انجام دهید.
http://bit.ly/dxgn520
(زمان حدودی مطالعه، ۱۰ دقیقه)
نویسنده: نیما حکیمرابط
#کاربرپژوهی #طراحی_محصول #روش
@Dexign فلسفه دیزاین
______
Nielsen Norman Group
When to Use Which User-Experience Research Methods
20 user-research methods: where they fit in the design process, whether they are attitudinal or behavioral, qualitative or quantitative, and their context of use.
#پست_مجدد این پست تا به حال بیش از ۵۰۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
قورباغه را دوباره اختراع نکنید!
در مهندسی نرمافزار، شناخت دقیق نیازمندیها و سپس ساخت محصولی مطابق نیازمندیها یکی از کارهای به ظاهر ساده ولی در عمل پیچیده است. مطلب زیر داستانی را تشریح میکند که در آن یک مهندس نرمافزار هنگام خلقت زمین پروژه طراحی «زنبور» را بر عهده گرفتهاست. ولی به دلایلی که در داستان توضیح داده شده اقدام به طراحی یک «وزغ» میکند که هیچ تناسبی با نیازمندیهای «زنبور» ندارد. این مهندس نرمافزار در حقیقت به جای خلق موجودی که نیازمندیهای زنبور را برآورده کند، یک حیوان جدید به نام وزغ خلق کرده که اتفاقا خدا قبلا آن را با نام «قورباغه» خلق کرده بوده!
اگر لینک زیر را کامل بخوانید ارتباط آن را با پروژههای نرمافزاری میبینید و خواهید دید که چگونه این خطا باعث شکست یک پروژه نرمافزاری میشود.
http://mehrandvd.me/2016/03/09/reinventing-the-frog/
#مهران_داودی
لینکداین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
در مهندسی نرمافزار، شناخت دقیق نیازمندیها و سپس ساخت محصولی مطابق نیازمندیها یکی از کارهای به ظاهر ساده ولی در عمل پیچیده است. مطلب زیر داستانی را تشریح میکند که در آن یک مهندس نرمافزار هنگام خلقت زمین پروژه طراحی «زنبور» را بر عهده گرفتهاست. ولی به دلایلی که در داستان توضیح داده شده اقدام به طراحی یک «وزغ» میکند که هیچ تناسبی با نیازمندیهای «زنبور» ندارد. این مهندس نرمافزار در حقیقت به جای خلق موجودی که نیازمندیهای زنبور را برآورده کند، یک حیوان جدید به نام وزغ خلق کرده که اتفاقا خدا قبلا آن را با نام «قورباغه» خلق کرده بوده!
اگر لینک زیر را کامل بخوانید ارتباط آن را با پروژههای نرمافزاری میبینید و خواهید دید که چگونه این خطا باعث شکست یک پروژه نرمافزاری میشود.
http://mehrandvd.me/2016/03/09/reinventing-the-frog/
#مهران_داودی
لینکداین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Dot Philosophy
Reinventing the Frog! - Dot Philosophy
Do you remember the time that God was creating the "Planet Ecosystem" as a sub project of "Earth Project"!? You know, there was a lot of work needed to be done to create this world. Some sample tasks might be: Creating Flowers Designing Rose Designing Tulip…
Media is too big
VIEW IN TELEGRAM
✅ پادکست مهران داودی (از اساتید دورههای زبان مشترک) در خصوص دو دورهی زبان مارکتینگ برای تیم فنی و زبان فنی برای تیم بیزینس
______________________________________
🔷 مهران داودی (https://twitter.com/mehrandvd )
🔹 معمار ارشد نرم افزار
🔹 مدیر عامل ملک رادار
🔹 مشاور نرم افزاری هواپیمایی ماهان
🔴آنچه این دوره در پی آن است کاهش هزینه ها و زمان رسیدن به نتیجه است. دقیقا چیزی که کسب و کارهای موفق به دنبال آن هستند.
____________________
🔶در دورهی زبان مارکتینگ برای فنیها به تیم های فنی کمک خواهیم کرد تا مبانی کسب و کار و ابزار های آن آشنا شوند و چالش های تیم مارکتینگ را درک کنند.
🔶در دورهی زبان فنی برای تیم بیزینس به تیم های بیزینس کمک خواهیم کرد تا با مبانی زبان فنی آشنا شوند و فرآیند آن از برنامهنویسی تا چالشهای سازمان های استارتاپی را یاد بگیرند.
____________________
📞برای اطلاعات بیشتر و رزرو دوره با شماره زیر تماس بگیرید.
02188677808
#مهران_داودی (http://ow.ly/GwIl309lFEm)
کانال تلگرام:
@SoftwarePhilosophy
____
______________________________________
🔷 مهران داودی (https://twitter.com/mehrandvd )
🔹 معمار ارشد نرم افزار
🔹 مدیر عامل ملک رادار
🔹 مشاور نرم افزاری هواپیمایی ماهان
🔴آنچه این دوره در پی آن است کاهش هزینه ها و زمان رسیدن به نتیجه است. دقیقا چیزی که کسب و کارهای موفق به دنبال آن هستند.
____________________
🔶در دورهی زبان مارکتینگ برای فنیها به تیم های فنی کمک خواهیم کرد تا مبانی کسب و کار و ابزار های آن آشنا شوند و چالش های تیم مارکتینگ را درک کنند.
🔶در دورهی زبان فنی برای تیم بیزینس به تیم های بیزینس کمک خواهیم کرد تا با مبانی زبان فنی آشنا شوند و فرآیند آن از برنامهنویسی تا چالشهای سازمان های استارتاپی را یاد بگیرند.
____________________
📞برای اطلاعات بیشتر و رزرو دوره با شماره زیر تماس بگیرید.
02188677808
#مهران_داودی (http://ow.ly/GwIl309lFEm)
کانال تلگرام:
@SoftwarePhilosophy
____
حتما برای شما هم پیش آمده که بعد از یادگیری یک موضوع و تسلط بر آن به مطلبی برخورد کنید که با خود فکر کنید کاش در هنگام یادگیری این مطلب را یاد گرفته بودم و تمام این مدت از آن استفاده میکردم.
دیوید یو (David Yu) در این مقاله مطالبی را که در مورد reactjs و پس از مدتها کار کردن با آن متوجه شده و آرزو میکرده که در آموزشهای اولی reactjs آنها را فرا میگرفته، گردآورده است.
هر کدام از ما میتوانیم چنین لیستی برای موضوعی که به آن تسلط داریم تهیه و منتشر کنیم!
http://bit.ly/30DG9eg
#مریم_کمالی (http://ow.ly/9Wa430mFGeK)
کانال تلگرام:
@SoftwarePhilosophy
___
دیوید یو (David Yu) در این مقاله مطالبی را که در مورد reactjs و پس از مدتها کار کردن با آن متوجه شده و آرزو میکرده که در آموزشهای اولی reactjs آنها را فرا میگرفته، گردآورده است.
هر کدام از ما میتوانیم چنین لیستی برای موضوعی که به آن تسلط داریم تهیه و منتشر کنیم!
http://bit.ly/30DG9eg
#مریم_کمالی (http://ow.ly/9Wa430mFGeK)
کانال تلگرام:
@SoftwarePhilosophy
___
Developer News
What I wish I knew when I started to work with React.js
by David Yu
What I wish I knew when I started to work with React.js
Photo by Ben White
[https://unsplash.com/@benwhitephotography?utm_source=medium&utm_medium=referral]
on Unsplash [https://unsplash.com?utm_source=medium&utm_medium=referral]After
its initial…
What I wish I knew when I started to work with React.js
Photo by Ben White
[https://unsplash.com/@benwhitephotography?utm_source=medium&utm_medium=referral]
on Unsplash [https://unsplash.com?utm_source=medium&utm_medium=referral]After
its initial…