atVSG

0011001000110100

وحید امیری مطلق

توسعه دهنده وب و موبایل

غیر فعال کردن قابلیت Swipe to go back مرورگر Chrome در macOS


یکی از قابلیت های مالتی تاچ Google Chrome در macOS که خیلی اوقات باعث ایجاد دردسر میشه اینه که با ژست دو انگشت به چپ میتونید به عقب برید و با دو انگشت به راست به جلو. راه غیر فعال کردنش هم اینه که اول از مرورگر کاملا خارج بشید (در macOS صرفا دکمه قرمز خروج رو زدن کافی نیست و باید حتما یا از command + Q استفاده کنید یا از منوی برنامه گزینه Quit Google Chrome رو انتخاب کنید.) بعد دستور زیر رو در برنامه Terminal وارد کنید و enter بزنید:

defaults write com.google.Chrome AppleEnableSwipeNavigateWithScrolls -bool FALSE

بعد از اجرای موفق دستور میتونید کروم رو باز کنید و دیگه اون قابلیت های ژستی عقب و جلو کار نمیکنن. این دستور در زمان نوشتن این مطلب با Chrome 68 در macOS High Sierra به درستی کار میکنه.


خروجی گرفتن از اپ iOS بدون نیاز به حساب پولی Apple Developer


برای منتشر کردن اپ در مارکت هایی مثل سیب اپ (SibApp) که میتونن به عنوان جایگزینی برای App Store مورد استفاده قرار بگیرند، باید بهشون خروجی اپ رو با فرمت .ipa بدید که البته به طور معمول این مدل خروجی گرفتن بدون داشتن حساب Apple Developer پولی که قیمتش حدود ۱۰۰ دلاره (بدون مالیات) به سختی امکان پذیره و هر نسخه از Xcode هم مدام دچار تغییر توی این قسمت میشه که واقعا کاربر رو کلافه میکنه. این رو مقایسه کنید با خروجی گفتن اپ Android که بسیار ساده و سریع و بدون دردسر انجام میشه. ممنون Apple! در ادامه نحوه خروجی گرفتن بدون Signing رو توضیح میدم.



سریع تر کردن انیمیشن Dock در macOS


اگه بخواید از فضای صفحه بیشترین استفاده رو در مک ببرید باید Dock رو به طور پیش فرض مخفی کنید. به این صورت که در مواقع عادی Dock مخفی شده و فقط وقتی که نشانگر موس رو پایین صفحه ببرید، اون موقع Dock ظاهر میشه (به صورت Overlay). برای فعال کردن این قابلیت باید به System Prefrences برید و از قسمت Dock چک باکس Automatically hide and show the dock رو بزنید. مشکلی که این قابلیت داره اینه که خیلی کنده و وقت رو تلف میکنه. برای همین ما باید یا انیمیشن رو غیر فعال کنیم یا مدتش رو کوتاه تر که اینجا مدتش رو کمتر میکنیم. البته یه پارامتر دیگه هم به اسم Delay داره که اون رو به کلی 0 میکنیم. داخل ترمینال کد های زیر رو به ترتیب اجرا کنید.

 

defaults write com.apple.dock autohide-delay -int 0

defaults write com.apple.dock autohide-time-modifier -float 0.4

killall Dock


نصب و راه اندازی Apache + PHP-FPM با استفاده از Homebrew


apache + phpfpm on macos

بعد از مدت ها سر و کله زدن با MAMP چند ساعت پیش مجبور شدم ماژول mongodb رو آپدیت کنم. متاسفانه نسخه جدید بخاطر تغییرات macOS High Sierra در زمینه SSL با Apache کار نمیکنه بنابراین اگر میخواید PHP رو با mod_php اجرا کنید با مشکل مواجه میشید. راه حلش هم یا استفاده از نسخه های قدیمی تر php_mongodb یا اجرای PHP در یک پروسه جداگانه و مستقل از Apache مثل PHP-FPM. برای من راه اول مناسب نیست بنابراین مجبور شدم MAMP رو به کلی پاک کنم و Apache و PHP رو هم از اول نصب کنم. در این مطلب توضیح میدم که چطوری PHP-FPM رو به همراه Apache روی macOS با استفاده از ابزار Homebrew نصب کنید.



مثال های استفاده از MongoDB + PHP


mongodb and php

خودم که میخواستم استفاده از MongoDB رو شروع کنم در کمال تعجب دیدم که تقریبا اصلا نمیشه نمونه کد به روز پیدا کرد. وقتی هم میخواید از PHP با MongoDB استفاده کنید کار از این هم سخت تر میشه به خاطر اینکه اکثر کاربران MongoDB از پلتفرم Node.js استفاده میکنند. دلیل دیگش هم اینه که PHP یک درایور قدیمی برای MongoDB داشت که الان پشتیبانی نمیشه و مثال هایی هم که توی وب پیدا میشن هنوز برای درایور جدید به روز نشدند.

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

مشاهده صفحه مثال ها در GitHub


یونیورسیتی و الکامپ و دانشگاه و سرکار و …


یونیورسیتی | وحید امیری مطلق، یزدان تکبیری، مجید شهبانی، علی بشیری

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

مدتی بود که چیزی ننوشته بودم و دلیلش هم نبود وقت کافی بود. در واقع وقت اصلا نبود و کار بسیار بود.

بالاخره موقعیت فراهم شد و تونستیم «یونیورسیتی» رو به بیست و سومین نمایشگاه الکامپ بخش الکام استارز ببریم.

مطلب طولانی در ادامه!