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

@Dexign فلسفه دیزاین
Forwarded from فلسفه دیزاین
This media is not supported in your browser
VIEW IN TELEGRAM
انیمیشنی که بر روی جامی ۵۰۰۰ ساله، کشف شده در «شهر سوخته»، در نزدیکی زابل، نقاشی شده است.

@Dexign فلسفه دیزاین
#پست_مجدد این پست تا به حال بیش از ۴۱۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
نامگذاری در برنامه‌نویسی شاید یکی از مهمترین کارهایی باشد که یک برنامه‌نویس انجام می‌دهد. یک برنامه‌نویس با نامگذاری متغییر‌ها، کلاس‌ها، فایل‌ها و ... در حقیقت مفاهیم جدید خلق می‌کند که در آینده برنامه‌نویسان دیگر معنی آن را از روی «نام» آنها حدس خواهند زد!
فصل زیر از کتاب Framework Design Guidlines (که به FDG معروف است) به طور اختصاصی استانداردهای نامگذاری را که در طراحی .Net Framework استفاده شده‌است را شرح می‌دهد. این کتاب برای ساخت تمامی سیستم‌ها در مایکروسافت به عنوان یک مرجع استفاده می‌شود. به همین دلیل هم در سایت msdn به صورت رایگان و قابل دسترس برای همه وجود دارد و هم کتاب چاپی آن وجود دارد که بسیار محبوب است.

https://msdn.microsoft.com/en-us/library/ms229002%28v=vs.110%29.aspx

#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd

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


___
Forwarded from SQL Server (Hamidreza)
سلام و عرض ادب خدمت دوستان عزیزم
شب بر همگان خوش باشه انشالله
مقاله ای رو مطالعه می کردم که به نظرم خالی از لطف نیست شما بزرگواران ازش بهره ببرید.
یکی از کارهایی که سیستم هایی نظیر Document Management System ها انجام میدن نگهداری فایلهایی نظیر PDF در داخل دیتابیس هست . و هر زمانی که شما نیاز داشتین از این فایلها استفاده کنید ، این فایلها رو لود کرده و با یکسری از ابزارهای جانبی سعی در پردازش و جستجو در محتوای فایلها می کند.
حالا اگر شما بتونید کل محتوای متنی فایل PDf رو داخل دیتابیس داشته باشید ، دیگه از این موارد راحت خواهید شدو کار شما بسیار راحتتر میشه و به راحتی میتونید عملیات Text Mining و ,... رو روی داده ها انجام بدین.
در نسخه 2017 با استفاده از R شما بدون هیچگونه ابزار اضافی میتونید محتویات متنی این فایلهارو استخراج کرده و در دیتابیس در داخل فیلدها و جداول مورد نیاز ذخیره کنید.
لینک مقاله رو در ادامه قرار میدهم امیدوارم براتون مفید واقع بشه

ارادتمند شما
حمیدرضا صادقیان
ID: @Hamidreza_Sadeghian
SQL Server Channel : @SQL_Server

https://www.mssqltips.com/sqlservertip/5490/load-data-from-pdf-file-into-sql-server-2017-with-r/
#پست_مجدد این پست تا به حال بیش از ۳۰۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
با شدت گرفتن روند تغییرات در درخواست‌های مشتریان، نیازمندی‌های پروژه‌ها و مسائل مربوط به پشتیبانی محصولات در دهه‌های اخیر، بسیاری از شرکت ها پی بردند که هماهنگ شدن با بازار با استفاده از فرآیند های تجاری قدیمی امکان پذیر نیست. لذا بسیاری از توسعه دهندگان و مدیران محصولات به متدلوژی‌های جدید مانند Agile روی آوردند. در حال حاضر این متدلوژی با وجود نواقصی که به آن وارد است بیشترین طرفدار و بازدهی را به خصوص در میان شرکت های کامپیوتری داشته است.
اما لزوما استفاده از یک متدلوژی، روش یا ابزار موفق، دلیل بر موفق شدن ما نیست، لذا آشنایی با متدلوژی ها و رویکردهایی مانند Lean، Scrum یا Kanban و انتخاب بهترین روش بین آن ها با توجه به نوع محصول، مشتری و شرایط شرکتی که در آن مشغول به فعالیت هستیم یک ضرورت است.
مطالعه لینک زیر می تواند در انتخاب هوشمندانه‌تر این متدولوژی ها بسیار کمک کننده باشد.

https://realtimeboard.com/blog/how-to-choose-between-agile-lean-scrum-and-kanban-which-methodology-is-the-best/#.V18eTlUrLDe

#کاروان_جافی

لینکدین:
https://uk.linkedin.com/in/karvan-jafi-96897027

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



___
Forwarded from Iran Agile
🔵 چگونه تصمیمات در سطح معماری و کلان پروژه را مستند کنیم؟

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

یکی از جدیدترین روش ها با عنوان
Lightweight Architecture Decision Records
شناخته می شود، که در لینک زیر میتوانید در این مورد بیشتر مطالعه کنید:

https://goo.gl/S64YmS

@iranagile
Forwarded from DotNetZoom (محمد جواد ابراهیمی)
ماکروسافت گیت هاب را خرید

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

آمارهای ارائه شده توسط گیت‌هاب نشون میده که این سرویس تا مارس ۲۰۱۸ میزبان بیش از ۲۸ میلیون توسعه‌دهنده بوده و بیش از ۸۵ میلیون مخزن کد بوده. که در این بین، ماکروسافت به عنوان فعال ترین Organization در گیت هاب بوده و بیش از ۱۰۰۰ کارمند را تنها برای افزودن کد‌های برنامه‌نویسی به منابع گیت‌هاب در اختیار دارد.

همچنین ماکروسافت چندی پیش، سرویس Codeplex را که به عنوان رقیبی نه چندان موفق در برابر گیت هاب بود رو متوقف کرد و پروژه های خودش رو به گیت هاب منتقل کرد.

در این میان رقبای مهمی برای گیت هاب وجود داره، از جمله gitlab، bitbucket و... که تلاش میکنند از این اتفاق بیشترین استفاده رو داشته باشند و با دادن تخفیف و پیشنهادات ویژه، توسعه دهندگان ناراضی از این اتفاق رو به سمت خودشون جلب کنند.

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

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

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

با توجه به تمرکز ماکروسافت بر بروی سرویس های کلود خود در این اواخر و نیز در کنفرانس بیلد 2018، هدف ماکروسافت از خرید گیت هاب ایجاد دروازه جدیدی را برای ارتباط با توسعه دهندگان نرم افزار و استفاده از توانایی های آنها برای شکوفایی هرچه بیشتر پلتفرم های مختلف کلود خود از جمله Azure و VSTS است.

https://goo.gl/faUoLf

https://news.microsoft.com/2018/06/04/microsoft-to-acquire-github-for-7-5-billion/

____________
@IranAspMvc
Forwarded from فلسفه دیزاین
بازی و دیزاین، بازی و زندگی

بر کسی پوشیده نیست که فعالیت‌های جانبی و غیرکاری در شرکت، به افزایش کیفیت ارتباطات تیمی کمک شایانی می‌کنند. با اینکه حداقل میزان مناسب این فعالیت‌ها از نظر من بصورت هفته‌ای یکبار است، بعضا به دلیل فشردگی کارها نمی‌توان این روند را بصورت پایدار ادامه داد. در تیم ما هم مواردی از قبلی بازی‌های رومیزی (Board Games)، دیدن فیلم و همچنین جلسات جمعی بررسی اپلیکیشن‌های شرکت‌های دیگر تجربه شده است که نتیجه غیرقابل باور و شگفت‌انگیزی داشته است.

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

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

اگر به دنبال دلایلی می‌گردید که مدیر خود را قانع کنید تا هرروز بازی کنید، مقاله امروز را از دست ندهید.

https://uxdesign.cc/warm-ups-in-design-thinking-more-than-just-a-game-7f755fcc8497

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

#معرفی #بازی #تیم
@Dexign فلسفه دیزاین

___
#پست_مجدد این پست تا به حال بیش از ۲۳۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
پروژه یا محصول؟ مدیر پروژه یا مدیر محصول؟

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

شما در حال توسعه کدام یک هستید؟ محصول یا پروژه؟

https://www.brainmates.com.au/brainrants/project-manager-vs-product-manager

#کاروان_جافی

لینکدین:
https://uk.linkedin.com/in/karvan-jafi-96897027

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



___
#خلاصه_مطالب «فلسفه نرم‌افزار» در هفته گذشته:

۱. قرار دادن فایل‌های PDF در دیتابیس (SQL Server)

https://t.me/SoftwarePhilosophy/1267

۲. نحوه انتخاب متدولوژی مناسب برای پروژه نرم‌افزاری

https://t.me/SoftwarePhilosophy/1269

۳. چگونه تصمیمات در سطح معماری و کلان پروژه را مستند کنیم؟ (Iran Agile)

https://t.me/SoftwarePhilosophy/1270

۴. ماکروسافت گیت هاب را خرید (Asp.Net Mvc)

https://t.me/SoftwarePhilosophy/1271

۵. بازی و دیزاین، بازی و زندگی (فلسفه دیزاین)

https://t.me/SoftwarePhilosophy/1272

۶. پروژه یا محصول؟ مدیر پروژه یا مدیر محصول؟

https://t.me/SoftwarePhilosophy/1274

ـــــــــــ

@SoftwarePhilosophy
#پست_مجدد این پست تا به حال بیش از ۱۰۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
در سیستم‌هایی که پردازش درخواست‌ها روی منابع مشترک انجام می شود. انجام ترتیبی درخواست‌ها به روش قفل گذاری (Locking) رایج‌ترین روش جلوگیری از همزمانی است. دو دیدگاه برای قفل گذاری وجود دارد. خوشبینانه (Optimistic) و بدبینانه (Pessimistic) و هنر معمار یا طراح نرم افزار، انتخاب روش مناسب برای رفع همزمانی است. مقاله زیر توضیح می‌دهد چطور شناخت دقیق کسب و کار، معرف روش قفل گذاری خواهد بود.


https://goo.gl/G8SyJU

#مهدی_نظری

لینکدین
https://ir.linkedin.com/in/mohammad-mahdi-nazari-90097b58

توییتر
https://twitter.com/ShamehdiN

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


___
#پست_مجدد این پست تا به حال بیش از ۲۲۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
مدیریت کردن برنامه نویس ها از بسیاری جهات شبیه مدیریت کردن دیگر افراد است. آن ها می خواهند که در حل مسائل فنی و منطق برنامه به آن ها کمک شود، از سیاست های غیر ضروری سازمان دور باشند و به دغدغه های شخصی آنها توجه شود. اما مدیریت کردن آن ها به مراتب سخت تر است. در این مقاله پنج نکته درباره اداره کردن تیم های نرم افزاری که محصولات بزرگی را با موفقت ارائه کرده اند توسط یکی از بزرگان این صنعت ذکر شده است.

http://www.cio.com/article/2436015/enterprise-architecture/5-things-grady-booch-has-learned-about-complex-software-systems.html

#کاروان_جافی

لینکدین:
https://uk.linkedin.com/in/karvan-jafi-96897027

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


___
#پست_مجدد این پست تا به حال بیش از ۲۶۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
دیتابیس‌های NoSQL امروزه در معماری‌های نوین نرم‌افزار جایگاه ویژه‌ای پیدا کرده‌اند. در سال‌های قبل از این نوع دیتابیس‌ها فقط در پروژه‌های خاصی استفاده می‌شد ولی به مرور نقش این نوع دیتابیس‌ها با ظهورمعماری‌های نوین یا مفاهیمی مانند CQRS پر رنگ تر شده‌است. مفاهیم این دیتابیس‌ها به طور کلی با مدل فکری دیتابیس‌های رابطه‌ای یا Relational متفاوت است.

http://www.c-sharpcorner.com/article/introduction-to-no-sql-and-working-with-mongodb-part-one/

#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd

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


___
Forwarded from Iran Agile
🔵 هرچیز مهم به ندرت فوریت دارد و هر چیز فوری به ندرت مهم است

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

یک مالک محصول خوب باید بتواند در اولویت بندی کارها هم فوریت و هم اهمیت کارها را در نظر بگیرد.

برای تشخیص کارهای مهم نیاز است که چشم انداز و اهداف دراز مدت تر برای محصول وجود داشته باشد. ندانستن اینکه چه کاری مهم است نشان می دهد که چنین چشم انداز و اهدافی وجود ندارد یا کمرنگ است.

http://bit.ly/2JOKK82
@iranagile
Forwarded from فلسفه دیزاین
درباره Titanها بیشتر بدانیم!

چطور می‌شود که تایتان‌ها انقدر قوی باشند؟ اگر در جریان سری کامیک‌ها و فیلم‌های Marvel باشید می‌دانید که اخیرا جنگی به نام Infinity War در دنیای Marvel به راه افتاده است. یک طرف این جنگ Thanos، از نژاد تایتان‌ها قرار دارد و در طرف دیگر آن، Capitan America، Iron Man و Thor و حتی Hulk و باقی Avengers! و با این‌حال نگران هستند که مبارزه را واگذار کرده و این اتفاق، نقطه پایانی باشد برای نسل تمام موجودات زنده در دنیا.

برای اطلاع بیشترتان می‌خواهم چند ویژگی تایتان‌ها را نام ببرم: ذهن و پوستی غیرقابل نفوذ؛ قدرت،‌ سرعت و استقامتی منحصربفرد؛ کنترل انرژی؛ نامیرا بودن و …
هیجان‌انگیزست نه؟ گذشته از توضیحات دنیای Marvel که دلیل قدرت تایتان‌ها را ترکیب شدن ژن جاودانی، تکثیر بیونیک، قدرت‌های خدایی و نهاد مرگ می‌داند، تایتان‌های دنیای واقعی چه کسانی هستند؟ چگونه دیزاینرها هم می‌توانند درون خود تایتانی داشته باشند؟

آقای Tim Ferriss، یکی از سرمایه‌گذاران موفق دنیای استارتاپ‌ها، کتابی درباره موفق‌ترین و قدرتمند‌ترین انسان‌های دنیای واقعی با نام «ابزارهای تایتان‌ها» یا Tools of Titans منتشر کرده‌ست. Tim در یادداشتی، از تجربیاتش در برخورد با این انسان‌های فوق موفق نوشته‌ست که پست امروز ماست.
جدای از اینکه خواندن کتاب ایشان را شدیدا پیشنهاد می‌کنم، مقاله امروز به کلیدی‌ترین ویژگی تمامی این افراد اشاره دارد و آن «ورزش و تمرین ذهن» است.

می‌پرسید دقیقا چگونه؟ مقاله امروز را از دست ندهید:

https://medium.com/the-mission/the-one-routine-common-to-billionaires-icons-and-world-class-performers-28ed11a49eda

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

پ. ن.
تریلر فیلم Avengers: Infinity War، محصولی از کمپانی Marvel:
https://www.youtube.com/watch?v=I0e3TXkSd4Q

#بررسی #ابزار_تایتان #موفقیت_خلاقیت
@Dexign فلسفه دیزاین

___