دنیای AR یا Augmented Reality باعث ایجاد مفاهیم جدیدی در UI/UX شدهاست. توان خلق موجودیتها در فضای اطراف کاربر امکانی است که قبلا وجود نداشته و به همین دلیل ظهور AR باعث ایجاد تجربیات جدیدی در دنیای UX شدهاست.
برای مثال در لینک زیر یکی از طراحان ارشد هولوگرافیک توضیح میدهد که در نسخههای اولیه نرمافزار طراحی برای خلق اشیا سه بعدی، از یک «میز چهارگوش» مجازی استفاده شده بود که کاربر روی آن شروع به طراحی میکرد (مثلا طراحی یک اسباببازی). پس از تستهای UX متوجه شدند چهارگوش بودن میز باعث میشود کاربران بیشتر یک سمت میز بایستند و کمتر دور شیی که طراحی میکنند بچرخند. به همین دلیل در نسخههای بعدی از یک میز مجازی «گرد» استفاده شد. نتیجه عالی بود، کاربران دیگر یک جای ثابت نمیایستند و تقریبا هر دفعه از یک زاویه جدید محصول خود را میبینند.
در مقاله زیر طراح ارشد تجربیات خود و درسهایی که تا به حال از انجام پروژههای هولوگرافیک کسب کرده را توضیح داده و چند مثال جذاب دیگر را هم بیان کرده است.
https://developer.microsoft.com/en-us/windows/holographic/case_study_-_3_holostudio_ui_and_interaction_design_learnings
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
برای مثال در لینک زیر یکی از طراحان ارشد هولوگرافیک توضیح میدهد که در نسخههای اولیه نرمافزار طراحی برای خلق اشیا سه بعدی، از یک «میز چهارگوش» مجازی استفاده شده بود که کاربر روی آن شروع به طراحی میکرد (مثلا طراحی یک اسباببازی). پس از تستهای UX متوجه شدند چهارگوش بودن میز باعث میشود کاربران بیشتر یک سمت میز بایستند و کمتر دور شیی که طراحی میکنند بچرخند. به همین دلیل در نسخههای بعدی از یک میز مجازی «گرد» استفاده شد. نتیجه عالی بود، کاربران دیگر یک جای ثابت نمیایستند و تقریبا هر دفعه از یک زاویه جدید محصول خود را میبینند.
در مقاله زیر طراح ارشد تجربیات خود و درسهایی که تا به حال از انجام پروژههای هولوگرافیک کسب کرده را توضیح داده و چند مثال جذاب دیگر را هم بیان کرده است.
https://developer.microsoft.com/en-us/windows/holographic/case_study_-_3_holostudio_ui_and_interaction_design_learnings
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
#خلاصه_مطالب «فلسفه نرمافزار» در هفته گذشته:
۱. اضافه کردن middleware به Owin Pipeline
https://telegram.me/SoftwarePhilosophy/529
۲. طراحی رابط کاربری برای من یا شما؟ (هم دیزاین)
https://telegram.me/SoftwarePhilosophy/530
۳. نحوه اضافه کردن هوش مصنوعی پروژههای Cognitive در باتها
https://telegram.me/SoftwarePhilosophy/532
۴. زمان و شیوه استفاده از Static Class ها برای برنامه نویسان مایکروسافت
https://telegram.me/SoftwarePhilosophy/534
۵. آشنایی با CQRS Pattern و کاربرد آن در معماریهای مختلف
https://telegram.me/SoftwarePhilosophy/535
۶. تجربیات و درسهای یک طراح ارشد پروژههای هولوگرافیک
https://telegram.me/SoftwarePhilosophy/536
ـــــــــــ
@SoftwarePhilosophy
۱. اضافه کردن middleware به Owin Pipeline
https://telegram.me/SoftwarePhilosophy/529
۲. طراحی رابط کاربری برای من یا شما؟ (هم دیزاین)
https://telegram.me/SoftwarePhilosophy/530
۳. نحوه اضافه کردن هوش مصنوعی پروژههای Cognitive در باتها
https://telegram.me/SoftwarePhilosophy/532
۴. زمان و شیوه استفاده از Static Class ها برای برنامه نویسان مایکروسافت
https://telegram.me/SoftwarePhilosophy/534
۵. آشنایی با CQRS Pattern و کاربرد آن در معماریهای مختلف
https://telegram.me/SoftwarePhilosophy/535
۶. تجربیات و درسهای یک طراح ارشد پروژههای هولوگرافیک
https://telegram.me/SoftwarePhilosophy/536
ـــــــــــ
@SoftwarePhilosophy
نسخه بعدی زبان جاوا یا Java 9 در راه است. مهمترین امکانات اضافه شده در نسخه قبلی Java 8 مفهوم Lambda، Stream و تغییرات API بود. در نسخه جدید Java 9 مهمترین تغییر، پروژه Jigsaw است که هدف آن شکستن JRE به قطعات کوچک و ماژولار کردن کامپوننتهای Java core است تا بتوان از آن در دستگاههای محاسباتی کوچک به راحتی استفاده کرد. ولی به غیر از این تغییر اساسی، تغییرات جذاب دیگری نیز در راه است. مهمترین این تغییرات عبارتند از:
1. Java + REPL (jshell)
2. Microbenchmarks
3. G1: a new garbage collector (maybe)
4. Full support for HTTP 2.0
5. Process API
6. Debugging in Production
در مقاله زیر این امکانات توضیح داده شدهاند. همچنین در مورد تصمیمگیری برای اضافه کردن G1 به Java 9 و وضعیت آن صحبت شدهاست.
http://blog.takipi.com/5-features-in-java-9-that-will-change-how-you-develop-software-and-2-that-wont
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
1. Java + REPL (jshell)
2. Microbenchmarks
3. G1: a new garbage collector (maybe)
4. Full support for HTTP 2.0
5. Process API
6. Debugging in Production
در مقاله زیر این امکانات توضیح داده شدهاند. همچنین در مورد تصمیمگیری برای اضافه کردن G1 به Java 9 و وضعیت آن صحبت شدهاست.
http://blog.takipi.com/5-features-in-java-9-that-will-change-how-you-develop-software-and-2-that-wont
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
OverOps Blog
5 Features in Java 9 that WILL Change How You Develop Software (and 2 That Won’t) | OverOps Blog
What are the most exciting features that are expected to be released in Java 9?
#پست_مجدد این پست تا به حال بیش از ۱۰۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
مطمئنا برای خیلی از ما پیش آمده است که یک صحفه را طراحی کردهایم و در browser مان همه چیز مرتب و به قاعده است، اما بعد از ریلیز روی سایت از دوستان و اطرافیانتان می شنویم که صفحه به هم ریخته و نامرتب بنظر میرسد.
نگذارید این اتفاق برای شما هم بیافتد. بعد از انجام کار زمان لازم را برای تست صفحه وب خود روی browserهای مختلف بگذارید.
اگر همه browserها را روی رایانه خود نصب ندارید، ابزارهای آنلاینی وجود دارد که می توانید با استفاده از آنها صفحه وب خود را در browserهای مختلف و ورژنهای مختلف آنها تست کنید. از جمله این سایتها:
• The Browser Sandbox
• BrowserShots.org
• CrossBrowserTesting.com
مقاله زیر به شرح این مشکل پرداخته و راه کارهایی را پیشنهاد کرده و مختصر توضیحی از سایت های ذکر شده ارائه کرده است.
http://www.digitalfamily.com/tutorials/test-your-website-in-differen-web-browsers/
#مریم_داودی
لینکدین:
https://www.linkedin.com/in/maryam-davoudi-7913565a
کانال تلگرام:
@SoftwarePhilosophy
___
نگذارید این اتفاق برای شما هم بیافتد. بعد از انجام کار زمان لازم را برای تست صفحه وب خود روی browserهای مختلف بگذارید.
اگر همه browserها را روی رایانه خود نصب ندارید، ابزارهای آنلاینی وجود دارد که می توانید با استفاده از آنها صفحه وب خود را در browserهای مختلف و ورژنهای مختلف آنها تست کنید. از جمله این سایتها:
• The Browser Sandbox
• BrowserShots.org
• CrossBrowserTesting.com
مقاله زیر به شرح این مشکل پرداخته و راه کارهایی را پیشنهاد کرده و مختصر توضیحی از سایت های ذکر شده ارائه کرده است.
http://www.digitalfamily.com/tutorials/test-your-website-in-differen-web-browsers/
#مریم_داودی
لینکدین:
https://www.linkedin.com/in/maryam-davoudi-7913565a
کانال تلگرام:
@SoftwarePhilosophy
___
#پست_مجدد این پست تا به حال بیش از ۱۰۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
دیباگ کردن به سبک جغدها
حتما تا به حال برنامهنویسی را دیدهاید که ساعتها «مانند جغد» به مانیتور زل زده و حتی به به کیبورد و ماوس دست نمیزند، ولی ادعا میکند در حال دیباگ کردن (پیدا کردن خطا) برنامه است!
در حقیقت او در حال انجام نوع خاصی از دیباگ به نام Owlly Debugging یا دیباگ کردن به سبک جغدها است.
حقیقت این است که زبانهای برنامهنویسی، تکنولوژیها و پلتفرمهایی وجود دارند که به شما امکانات زیادی برای دیباگ کردن نمیدهند و برنامه نویس برای پیدا کردن خطا چارهای به جز خواندن و حدس خطا ندارد. زبانهای Declarative مانند SQL، تکنیکهایی مانند AOP و مفاهیمی مانند MVVM همگی از این نوع هستند.
http://mehrandvd.me/2016/08/30/owlly-debugging-debugging-like-owl/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
حتما تا به حال برنامهنویسی را دیدهاید که ساعتها «مانند جغد» به مانیتور زل زده و حتی به به کیبورد و ماوس دست نمیزند، ولی ادعا میکند در حال دیباگ کردن (پیدا کردن خطا) برنامه است!
در حقیقت او در حال انجام نوع خاصی از دیباگ به نام Owlly Debugging یا دیباگ کردن به سبک جغدها است.
حقیقت این است که زبانهای برنامهنویسی، تکنولوژیها و پلتفرمهایی وجود دارند که به شما امکانات زیادی برای دیباگ کردن نمیدهند و برنامه نویس برای پیدا کردن خطا چارهای به جز خواندن و حدس خطا ندارد. زبانهای Declarative مانند SQL، تکنیکهایی مانند AOP و مفاهیمی مانند MVVM همگی از این نوع هستند.
http://mehrandvd.me/2016/08/30/owlly-debugging-debugging-like-owl/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Dot Philosophy
Owlly Debugging: Debugging Like an Owl - Dot Philosophy
Have you ever seen a developer, staring thoughtfully at the monitor for a long moment, not even touching the keyboard and mouse, and still claims that he is debugging some piece of code! It is true, there is some kind of code that could not be debugged line…
سازگاری با مرورگرهای مختلف از ابتدا برای طراحان مشکلاتی را در بر داشته و مشکل از جایی عمیقتر میشود که این مرورگرها نسخههای متفاوتی دارند و شما نمیتوانید همه آنها را کنار هم داشته باشید، بخصوص که این روزها استفاده از مروگرهای تلفن همراه و تبلتها نیز بالا رفته است. پس وبسایت شما باید با همه مرورگرها سازگار و یا اصطلاحا cross-browser باشد .
از بین سرویسدهندگانی که این تستها را انجام میدهند شاید یکی از بهترین سرویسدهندگان، BrowserStack باشد. با استفاده از این سرویس میتوانید سایت خود را در بیشتر از 1000 نسخهی از مرورگرهای مختلف تست کنید. این تنوع شامل دستگاهها و حتی سیستم عاملهای مختلف میشود. همینطور این امکان را به شما میدهد تا بتوانید نسخهی اجرای شدهی سایت خود را در نسخههای مختلف مرورگرها، حتی دستگاههای مختلف توسط اسکرین شات ببنید. مهمترین قابلیت آن تست سایتهای local و خصوصی به اکثر زبانهای برنامه نویسی میباشد.
میتوانید به کمک لینک زیر از سایت خود روی مرورگرهای مختلف اسکرین شات بگیرید.
https://www.browserstack.com/screenshots
#محمدرضا_جلیلوند
لینکدین:
http://ir.linkedin.com/in/mohammad-reza-jalilvand-0a5572b1
کانال تلگرام:
@SoftwarePhilosophy
___
از بین سرویسدهندگانی که این تستها را انجام میدهند شاید یکی از بهترین سرویسدهندگان، BrowserStack باشد. با استفاده از این سرویس میتوانید سایت خود را در بیشتر از 1000 نسخهی از مرورگرهای مختلف تست کنید. این تنوع شامل دستگاهها و حتی سیستم عاملهای مختلف میشود. همینطور این امکان را به شما میدهد تا بتوانید نسخهی اجرای شدهی سایت خود را در نسخههای مختلف مرورگرها، حتی دستگاههای مختلف توسط اسکرین شات ببنید. مهمترین قابلیت آن تست سایتهای local و خصوصی به اکثر زبانهای برنامه نویسی میباشد.
میتوانید به کمک لینک زیر از سایت خود روی مرورگرهای مختلف اسکرین شات بگیرید.
https://www.browserstack.com/screenshots
#محمدرضا_جلیلوند
لینکدین:
http://ir.linkedin.com/in/mohammad-reza-jalilvand-0a5572b1
کانال تلگرام:
@SoftwarePhilosophy
___
Browserstack
Browser Screenshots For Quick Testing On 3000+ Real Browsers | BrowserStack
Generate Screenshots of your Website on Chrome, IE, Firefox and Safari to test for Cross Browser compatibility on desktop browsers and real mobile devices.
Forwarded from Software Philosophy
اگر دوستانی دارید که نه تنها برنامه نویس هستند، بلکه اعتقاد دارید «مهندس نرمافزار» هم هستند، آنها را به کانال @SoftwarePhilosophy دعوت کنید.
این پیغام را برای آنها Forward کنید.
این پیغام را برای آنها Forward کنید.
مفهوم «Saga» در معماری نرمافزار مفهومی است که اخیرا در مقالههای مربوط به CQRS Pattern بسیار زیاد از آن صحبت میشود.
با این که مفهوم بیشتر از طریق CQRS شناخته شدهاست ولی در حقیقت این مفهوم از قبل وجود داشتهاست. مفهوم Saga اولین بار در مقالهای با نام «Sagas» توسط «هکتور گارسیا» و «کنت سالم» در سال سال ۱۹۸۷ معرفی شد. لینک زیر این مفهوم را با نام «Process Manager» معرفی کرده و این نام را نام بهتری برای این مفهوم دانسته.
مطلب زیر یکی از بهترین منابع برای آشنایی با مفهوم Saga است که به سادگی آن را توضیح داده است. در این مقاله مفهوم Saga با یک مثال ساده بیزنسی شرح داده شده و کاربرد آن در مقایسه با سایر روشها بررسی شدهآست.
https://msdn.microsoft.com/en-us/library/jj591569.aspx
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
با این که مفهوم بیشتر از طریق CQRS شناخته شدهاست ولی در حقیقت این مفهوم از قبل وجود داشتهاست. مفهوم Saga اولین بار در مقالهای با نام «Sagas» توسط «هکتور گارسیا» و «کنت سالم» در سال سال ۱۹۸۷ معرفی شد. لینک زیر این مفهوم را با نام «Process Manager» معرفی کرده و این نام را نام بهتری برای این مفهوم دانسته.
مطلب زیر یکی از بهترین منابع برای آشنایی با مفهوم Saga است که به سادگی آن را توضیح داده است. در این مقاله مفهوم Saga با یک مثال ساده بیزنسی شرح داده شده و کاربرد آن در مقایسه با سایر روشها بررسی شدهآست.
https://msdn.microsoft.com/en-us/library/jj591569.aspx
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Docs
Reference 6: A Saga on Sagas
یکی از محصولاتی که بصورت تخصصی در حوزه مجازی سازی در لایه سیستم عامل فعالیت میکند Docker می باشد . داکر یک محصول Open Source است که فرایند ایجاد، توسعه و اجرا کردن Application ها را با استفاده از Container ها ساده میکند. Container ها به یک برنامه نویس این اجازه را میدهد که application خود را با تمامی اجزای مورد نیاز آن اعم از فایلهای dll و کلیه library ها، کلیه وابستگی ها در قالب یک بسته نرم افزاری بیرون بدهد به شکلی که از بیرون یک نرم افزار واحد به نظر برسد.
از ویژگی های اصلی Docker میتوان به Open Source بودن محصول، سبک بودن، Deploy سریع اپلیکیشن، قابلیت جابجایی Containerها بین ماشینهای مختلف و قابلیت ورژن کنترل Containerها میباشد.
لینک زیر در مورد مکانیزم Docker و ویژگیهای آن توضیح میهد.
http://www.zdnet.com/article/what-is-docker-and-why-is-it-so-darn-popular
#محمدرضا_جلیلوند
لینکدین:
http://ir.linkedin.com/in/mohammad-reza-jalilvand-0a5572b1
کانال تلگرام:
@SoftwarePhilosophy
___
از ویژگی های اصلی Docker میتوان به Open Source بودن محصول، سبک بودن، Deploy سریع اپلیکیشن، قابلیت جابجایی Containerها بین ماشینهای مختلف و قابلیت ورژن کنترل Containerها میباشد.
لینک زیر در مورد مکانیزم Docker و ویژگیهای آن توضیح میهد.
http://www.zdnet.com/article/what-is-docker-and-why-is-it-so-darn-popular
#محمدرضا_جلیلوند
لینکدین:
http://ir.linkedin.com/in/mohammad-reza-jalilvand-0a5572b1
کانال تلگرام:
@SoftwarePhilosophy
___
ZDNET
What is Docker and why is it so darn popular?
Docker, a new container technology, is hotter than hot because it makes it possible to get far more apps running on the same old servers and it also makes it very easy to package and ship programs. Here's what you need to know about it.
#خلاصه_مطالب «فلسفه نرمافزار» در هفته گذشته:
۱. امکانات اضافه شده به نسخه آینده زبان جاوا (Java 9):
https://telegram.me/SoftwarePhilosophy/538
۲. ابزاری برای تست صفحات وب در browser های مخلتف:
https://telegram.me/SoftwarePhilosophy/540
۳. دیباگ کردن به سبک جغدها:
https://telegram.me/SoftwarePhilosophy/542
۴. ابزاری برای تست صفحات وب در browser های مخلتف به همراه اسکرینشات:
https://telegram.me/SoftwarePhilosophy/543
۵. مفهوم Saga در معماری نرمافزار:
https://telegram.me/SoftwarePhilosophy/545
۶. پلتفرم اوپن سورس Docker و نحوه عملکرد آن:
https://telegram.me/SoftwarePhilosophy/546
ـــــــــــ
@SoftwarePhilosophy
۱. امکانات اضافه شده به نسخه آینده زبان جاوا (Java 9):
https://telegram.me/SoftwarePhilosophy/538
۲. ابزاری برای تست صفحات وب در browser های مخلتف:
https://telegram.me/SoftwarePhilosophy/540
۳. دیباگ کردن به سبک جغدها:
https://telegram.me/SoftwarePhilosophy/542
۴. ابزاری برای تست صفحات وب در browser های مخلتف به همراه اسکرینشات:
https://telegram.me/SoftwarePhilosophy/543
۵. مفهوم Saga در معماری نرمافزار:
https://telegram.me/SoftwarePhilosophy/545
۶. پلتفرم اوپن سورس Docker و نحوه عملکرد آن:
https://telegram.me/SoftwarePhilosophy/546
ـــــــــــ
@SoftwarePhilosophy
گرفتن امتیاز ۴۰۰ در Telegram Lumberjack با استفاده یک بات برنامهنویسی شده!!!
https://www.youtube.com/watch?v=w3SsDhT7r2Y
کانال تلگرام:
@SoftwarePhilosophy
___
https://www.youtube.com/watch?v=w3SsDhT7r2Y
کانال تلگرام:
@SoftwarePhilosophy
___
YouTube
Cheat Telegram Lumberjack with this Bot
http://mehrandvd.me/2016/10/30/cheating-telegram-lumberjack/
A very handy Telegram bot to cheat Telegram Lumberjack!
I've just wrote it for fun using plain C# 6.0.
Like more than 400 scores!? You can find more details about its programming details and executable…
A very handy Telegram bot to cheat Telegram Lumberjack!
I've just wrote it for fun using plain C# 6.0.
Like more than 400 scores!? You can find more details about its programming details and executable…
نوشتن بات برای بازیهای کامپیوتری یکی از تفریحاتی است که برای برنامهنویسان میتواند جذاب باشد. با اینکه این برنامهها معمولا جز برنامههای کوچک محسوب میشوند ولی معماری نرمافزاری آنها کماکان میتواند جذاب باشد. یکی از روشهای معماری این نرمافزارها مدل کردن جهان بازی است. در این معماری تمامی امکاناتی که یک بازی در اختیار کاربر قرار میدهد به طور انتزاعی طراحی میشود. برای مثال برای اینکه بازی ساده Telegram Lumberjack را مدل کرد باید بررسی کرد این بازی چه امکاناتی را در اختیار بازیگر قرار میدهد. برای مثال یک عامل میتواند با گرفتن فیلم از اسکرین و فرستادن دکمههای چپ و راست به موقع به عنوان یک بات برای این بازی عمل کند.
لینک زیر یکی از پیادهسازیهای ممکن برای گرفتن امتیازهای بالا در Telegram Lumberjack را شرح دادهاست.
http://mehrandvd.me/2016/10/30/cheating-telegram-lumberjack/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
لینک زیر یکی از پیادهسازیهای ممکن برای گرفتن امتیازهای بالا در Telegram Lumberjack را شرح دادهاست.
http://mehrandvd.me/2016/10/30/cheating-telegram-lumberjack/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
تکنولوژی Xamarin یکی از تکنولوژیهای توسعه برنامههای موبایل cross-platform است. سایت «تکنولوژی رادار» که توسط «مارتین فاولر» مدیریت میشود و به بررسی تکنولوژیها میپردازد، از سال ۲۰۱۵ این تکنولوژی را وارد حلقه Trial کرده است. ورود این تکنولوژی به حلقه Trial به این معنی است که به نظر متخصصان شرکت Thought Works، «این تکنولوژی ارزش دنبال کردن دارد و برای استفاده در محصولات شرکتهای بزرگی که حاضرند روی تکنولوژیهای جدید سرمایهگذای کنند مناسب است». تا قبل از سال ۲۰۱۵ این تکنولوژی در حلقه Assess قرار داشت که که به این معنی بود: « تکنولوژی جذابی است ولی هنوز شرکتها باید آن را بررسی کنند».
با آماده شدن این تکنولوژی برای توسعه برنامههای موبایل و کامپوننتهایی که برای آن نوشته شدهاست به نظر میرسد نسل جدیدی از برنامه نویسی موبایل شکل گیرد.
https://www.thoughtworks.com/radar/tools/xamarin
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
با آماده شدن این تکنولوژی برای توسعه برنامههای موبایل و کامپوننتهایی که برای آن نوشته شدهاست به نظر میرسد نسل جدیدی از برنامه نویسی موبایل شکل گیرد.
https://www.thoughtworks.com/radar/tools/xamarin
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Thoughtworks
Technology Radar | Emerging Technology Trends for 2017 | ThoughtWorks
What’s happening in the Tools quadrant of the ThoughtWorks Technology Radar? Discover what’s new or moved in the latest edition. Find out more #TWTechRadar
استایل برنامهنویسی JSFuck یک نوع خاص برنامهنویسی رمزگونه و آموزشی در JavaScript است. در این نوع برنامه نویسی فقط و فقط از ۶ کاراکتر «()+[]!» استفاده میشود و تمام المانهای مورد نیاز برنامه نویسی با استفاده فوت و فنها و trick های JavaScript معادلسازی شدهاند. برای مثال برای معادل عبارت false، ![] و برای true از !![] استفاده میشود. اینها trick هایی در زبان JavaScript هستند که معمولا توصیه میشود از آن دوری شود، ولی در این سبک همین تکنیکها پایه و اساس هستند. کشف راز هر کدام از این معادلها تفریح خوبی برای برنامهنویسان JavaScript است. چند معادلسازی جالب دیگر این روش عبارتند از:
1. false => ![]
2. true => !![]
3. undefined => [][[]]
4. NaN => +[![]]
5. 0 => +[]
6. 1 => +!+[]
7. 2 => !+[]+!+[]
به این ترتیب هر کد JavaScript را میتوان به سبک JSFuck هم نوشت! در سایت زیر ضمن معرفی این استایل برنامهنویسی، ابزاری برای encode کردن کد JavaScript به این سبک نیز وجود دارد.
http://www.jsfuck.com/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
1. false => ![]
2. true => !![]
3. undefined => [][[]]
4. NaN => +[![]]
5. 0 => +[]
6. 1 => +!+[]
7. 2 => !+[]+!+[]
به این ترتیب هر کد JavaScript را میتوان به سبک JSFuck هم نوشت! در سایت زیر ضمن معرفی این استایل برنامهنویسی، ابزاری برای encode کردن کد JavaScript به این سبک نیز وجود دارد.
http://www.jsfuck.com/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Jsfuck
JSFuck - Write any JavaScript with 6 Characters: []()!+
JSFuck is an esoteric and educational programming style based on the atomic parts of JavaScript. It uses only six different characters to execute code.
فایلهای گرافیکی دو دسته اند vector و raster:
در فایلهای Vector برای نمایش یک عکس از خطوط و منحنی استفاده شده است. این فایلهای گرافیکی توسط نرم افزارهای کامپیوتری ساخته میشوند که هر خط و منحنی مشخصات خود را دارد. به همین دلیل با زوم روی این عکسها از شفافیت آن کاسته نمیشود.
در فایلهای Raster (Bitmap image)، این پیکسلها هستند که یک عکس را تشکیل میدهند. با زیاد کردن زوم روی این عکسها، از کیفیت آنها کاسته میشود اما در کل عکسهای طبیعیتری را میتوانند نمایش دهند، از این جهت که با زیاد کردن تعداد پیکسلها با رنگهای زیاد میتوان عکس را به واقعیت نزدیک کرد.
دانستن معایب و مزایای هرکدام از این فایلها برای انتخاب صحیح و متناسب با نیاز، لازم و ضروری است. مقاله زیر به شرح این مهم پرداخته است.
http://vector-conversions.com/vectorizing/raster_vs_vector.html
#مریم_داودی
لینکدین:
https://www.linkedin.com/in/maryam-davoudi-7913565a
کانال تلگرام:
@SoftwarePhilosophy
___
در فایلهای Vector برای نمایش یک عکس از خطوط و منحنی استفاده شده است. این فایلهای گرافیکی توسط نرم افزارهای کامپیوتری ساخته میشوند که هر خط و منحنی مشخصات خود را دارد. به همین دلیل با زوم روی این عکسها از شفافیت آن کاسته نمیشود.
در فایلهای Raster (Bitmap image)، این پیکسلها هستند که یک عکس را تشکیل میدهند. با زیاد کردن زوم روی این عکسها، از کیفیت آنها کاسته میشود اما در کل عکسهای طبیعیتری را میتوانند نمایش دهند، از این جهت که با زیاد کردن تعداد پیکسلها با رنگهای زیاد میتوان عکس را به واقعیت نزدیک کرد.
دانستن معایب و مزایای هرکدام از این فایلها برای انتخاب صحیح و متناسب با نیاز، لازم و ضروری است. مقاله زیر به شرح این مهم پرداخته است.
http://vector-conversions.com/vectorizing/raster_vs_vector.html
#مریم_داودی
لینکدین:
https://www.linkedin.com/in/maryam-davoudi-7913565a
کانال تلگرام:
@SoftwarePhilosophy
___
Vector-Conversions
Raster (Bitmap) vs Vector
Bitmap or Raster images are common images created with pixel-based programs or captured with a camera or scanner. Vector graphics are created with vector software and are common for images that will be applied onto a physical product.
Forwarded from فلسفه دیزاین
هنریترین استتار تاریخ
و مروری بر کنفرانس جدید گوگل
پیشتر در همینجا درباره سری جدید کنفرانسهای Google Design صحبت کرده بودم. این کنفرانسها بعد از پیوستن Matías Duarte به گوگل (به عنوان معاون طراحی) و مدتی بعد از معرفی Material Design شروع شد. آخرین کنفرانس از این سری، با نام SPAN 2016، سه روز قبل (۲۷ اکتبر) در شهر لسآنجلس برگزار شد.
وقتی داشتم اخبار این کنفرانس رو روی توییتر دنبال میکردم، به یه موضوع خیلی جالب و هیجانانگیز که Barbara Bestor در سخنرانیش مطرح کرده بود، برخوردم.
وقتی از استتار کردن صحبت میشه، اولین چیزی که به ذهن اکثر ما میرسه لباسهای ارتشی و پوست حیوانات هست. اما به نظر میرسه در جنگها چیزی بیش از صرفا مخفی شدن مهم هست. مخصوصا وقتی کشتیها در جایی مثل آبهای آزاد در حال جنگ هستند چراکه جایی برای مخفی شدن وجود نداره.
اینجاست که ذهن بینظیر هنرمندها و دیزاینرها به یکی از هوشمندانهترین راهحلهای ممکن میرسه! مفهومی به اسم Dazzle Camouflage.
در جنگ جهانی اول، Norman Wilkinson، راهحلی به اسم Dazzle Camouflage رو برای جنگ در دریا پیشنهاد میده. آقای Wilkinson کشتیها رو با اشکال هندسی با کنتراست بالا (اغلب سیاه و سفید) نقاشی میکنه که در شکلی خاص همدیگه رو قطع میکنند. نتیجه این کار خارقالعادهست!
این نوع نقاشی در نیروی دشمنی که قصد نابودی کشتی مورد نظر رو داشتند خطای دید ایجاد کرده و باعث میشه در محاسبه جهت و سرعت کشتی مورد نظر، دچار مشکل بشن و تبعا نتونن اون رو مورد هدف موشکهاشون قرار بدن.
این نوع استتار چنان ترکیب هیجانانگیزی بین موضوعات جنگی و هنر ایجاد کرده که وقتی کشتیهای با این استتار رو ببینید، همچون اثری هنری، نام هنرمند نقاش اون هم در کنارش حضور داره!
https://en.wikipedia.org/wiki/Dazzle_camouflage
به عقیده من، بینظیرترین نمودهای هنر رو میشه در زندگی واقعی و برای کاربردهایی دور از ذهن پیدا کرد. اگر شما هم از این موارد مثالهایی دارید، خوشحال میشم بهم پیغام بدید تا دربارهشون بدونم.
(اطلاعات تماس من در توضیحات کانال هست.)
#هنر #کاربرد_هنر #جنگ #نقاشی
@HamDesign هَم دیزاین
و مروری بر کنفرانس جدید گوگل
پیشتر در همینجا درباره سری جدید کنفرانسهای Google Design صحبت کرده بودم. این کنفرانسها بعد از پیوستن Matías Duarte به گوگل (به عنوان معاون طراحی) و مدتی بعد از معرفی Material Design شروع شد. آخرین کنفرانس از این سری، با نام SPAN 2016، سه روز قبل (۲۷ اکتبر) در شهر لسآنجلس برگزار شد.
وقتی داشتم اخبار این کنفرانس رو روی توییتر دنبال میکردم، به یه موضوع خیلی جالب و هیجانانگیز که Barbara Bestor در سخنرانیش مطرح کرده بود، برخوردم.
وقتی از استتار کردن صحبت میشه، اولین چیزی که به ذهن اکثر ما میرسه لباسهای ارتشی و پوست حیوانات هست. اما به نظر میرسه در جنگها چیزی بیش از صرفا مخفی شدن مهم هست. مخصوصا وقتی کشتیها در جایی مثل آبهای آزاد در حال جنگ هستند چراکه جایی برای مخفی شدن وجود نداره.
اینجاست که ذهن بینظیر هنرمندها و دیزاینرها به یکی از هوشمندانهترین راهحلهای ممکن میرسه! مفهومی به اسم Dazzle Camouflage.
در جنگ جهانی اول، Norman Wilkinson، راهحلی به اسم Dazzle Camouflage رو برای جنگ در دریا پیشنهاد میده. آقای Wilkinson کشتیها رو با اشکال هندسی با کنتراست بالا (اغلب سیاه و سفید) نقاشی میکنه که در شکلی خاص همدیگه رو قطع میکنند. نتیجه این کار خارقالعادهست!
این نوع نقاشی در نیروی دشمنی که قصد نابودی کشتی مورد نظر رو داشتند خطای دید ایجاد کرده و باعث میشه در محاسبه جهت و سرعت کشتی مورد نظر، دچار مشکل بشن و تبعا نتونن اون رو مورد هدف موشکهاشون قرار بدن.
این نوع استتار چنان ترکیب هیجانانگیزی بین موضوعات جنگی و هنر ایجاد کرده که وقتی کشتیهای با این استتار رو ببینید، همچون اثری هنری، نام هنرمند نقاش اون هم در کنارش حضور داره!
https://en.wikipedia.org/wiki/Dazzle_camouflage
به عقیده من، بینظیرترین نمودهای هنر رو میشه در زندگی واقعی و برای کاربردهایی دور از ذهن پیدا کرد. اگر شما هم از این موارد مثالهایی دارید، خوشحال میشم بهم پیغام بدید تا دربارهشون بدونم.
(اطلاعات تماس من در توضیحات کانال هست.)
#هنر #کاربرد_هنر #جنگ #نقاشی
@HamDesign هَم دیزاین
Forwarded from فلسفه دیزاین
#پست_مجدد این پست تا به حال بیش از ۱۱۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.