بدنبال فرازمینی‌ها

استاندارد

پروژه وویجر یا  Voyager یکی‌ از جسورانه‌ترین و در عین حال جذاب‌ترین پروژه‌های فضای ناسا بوده . این پروژه شامل ۲ فضاپیما با نام‌های وویجر ۱ و وویجر ۲ می‌شود که در سال ۱۹۷۷ برای مطالعه بر روی سیارات منظومه شمسی‌ به فضا پرتاب شدند . ماموریت نخست این پروژه برسی‌‌ بر روی سیارات گازی مشتری ، زحل ، اورانوس و نپتون بود که بعد از به اتمام رساندن موفقیت آمیز ماموریت نخست راهشان را به سمت خارج از منظومه شمسی‌ ادامه دادند .

VoyagerReverse-660x490

ناسا در هر یک از این فضاپیماها که به اندازه یک خودرو سواری کوچک وزن داشتند ، علاوه بر تجهیزات عکس‌برداری سوخت و … یک صفحه فونوگرافی طلایی قرار داد . در هر یک از این صفحات اطلاعاتی شامل فراز و نشیب‌ تمدن بشر به زبان ریاضی ، تصویری از یک زن و یک مرد با دستانی برافراشته به نشان دوستی ، آدرس و جایگاه سیاره زمین در منظومه شمسی‌ ، همچنین ۱۱۶ قطعه عکس آنالوگ و آواهای طبیعی شامل موج آب، آذرخش و حیوانات به همراه قطعات موسیقی از فرهنگ‌ها و زمان‌های گوناگون، سلام و خوشامدگویی به ۵۶ زبان گوناگون ( که فارسی هم جزو اونها هست ) و پیام چاپ شده از رییس‌جمهور وقت آمریکا و نیز دبیرکل سازمان ملل متحد جایگذاری شده‌اند.

Voyager-Golden-Record

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

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

 ناسا در سال ۲۰۱۳ تأیید کرد که فضاپیما ویجر ۱ از مرز منظومه شمسی‌ گذر کرد و به فضایی موسوم به فضای بیرونی (Interstellar space یا Outer space) وارد شد . فضاپیمای وویجر ۱ درحال حاضر دورترین ساخته دست بشر نسبت به سیاره مادری به حساب می‌آید.

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

آخرین تصاویری که وویجر ۱ از سیاره مادری خود ارسال کرده در سال ۱۹۹۰ بوده ، و به اعتقاد دانشمندان این آخرین باری بود که ویجر زمین را میدید .

زمین از دید ووجیر در ۳.۷ بیلیون کیلومتری زمین

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

منابع :

 gadgetnews ،  wikipedia ، wikipedia

مزین کردن اپلیکیشن‌ اندرویدیتون به رمزعبور

استاندارد

چند روز پیش یکی‌ از دوستانم ازم پرسید ، تاحالا شده واسه اپلیکیشن‌هایی که توسعه دادی این امکان رو بذاری که کابر بتونه برای وارد شدن به اپلیکیشن پسورد ست کنه !؟

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

locked-doors

خب قبل از هر چیز بیاین یه بار دیگه مسئله رو به صورت دقیقتر برسی کنیم.

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

اما نکته مهم اینجاس که متاسفانه اندروید برخلاف IOS ، مستقیما به ما دسترسیی نمیده که با  اون بتونیم چک کنیم که آیا اپلیکیشن ما به حالت background (خارج شده) رفته یا نه ! این مشکل خودش رو زمانی نشون میده که کاربر با استفاده از دکمه Home یا دکمه Recent Application از اپلیکیشن خارج بشه و برنامه کاملا از memory خارج نشده باشه . پس تنها راهی که میمونه اینه که خودمون یجوری این موضوع رو متوجه بشیم .

برای انجام این کار میتونیم از ActivityLifecycleCallbacks کمک بگیریم و به وسیله اون تعداد دفعات شروع (start) و پایان (stop) تمام Activityهای اپلیکیشنمون رو بدست بیاریم و بعد از محاسبه هرجا که تعداد شروع‌ها بیشتر از تعداد پایان‌ها بود یعنی‌ اپلیکیشن ما به اصطلاح در foreground هست یا به زبان دیگه کاربر درحال کار با اپلیکیشنه. و اگه مقدار شروع ها بیشتر یا مساوی تعداد پایان‌ها بود اپلیکیشن در حالت background خواهد بود . تو کد زیر کلاس MyLifecycleHandler  رو نوشتم که توی اون تابع isApplicationVisible دقیقا همین کار رو انجام میده .

توی کلاس بالا داخل تابع onActivityStopped چک میکنم که آیا اپلیکیشن به حالت background میره یا نه ! و در صورتی که به background میرفت به وسیله SharedPreferences یه flag به اسم isAppLeaved رو ذخیره میکنیم . تا در صورت باز شدن دوباره اپلیکیشن و صدا شدن تابع onActivityStarted با چک کردن اون و درصورت true بودن مقدار isAppLeaved ، کاربر رو به صفحه دریافت رمزعبور بفرستیم .

و در آخر هم لازمه که کلاس MyLifecycleHandler  رو برای اپلیکیشنمون ‌ست کنیم . پس یه کلاس میسازیم به اسم MApplication و از Application ارث بری می‌کنیم ، و بعد در متد onCraete کد زیر رو قرار میدیم .

حتما حواستون باشه توی فایل AndroidManifest پروژتون اسم MApplication رو قرار بدین .

خب کار تمومه .

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

لازم به ذکره ، راه حل بالا برای آندروید ۱۴ به بالا جواب میده .

معرفی‌ انیمیشن : Balance

استاندارد

« مانند خارپشت‏ها‏یی هستیم که برای گرم شدن به هم می‏چسبند و اگر به هم بچسبند خارشان به تن هم فرومی‏رود و اگر جدا شوند، از سرما رنج خواهند برد. زندگی معامله‏ای است که در هر شکل خرج آن بیش از دخلش است. »

این جمله از کتاب « جهان همچون اراده و تصور » نوشته آرتور شوپنهاور اولین چیزی بود که بعد از دیدن این انیمیشن در ذهنم خطور کرد .
چند سالی‌ میگذره از زمانی‌ که من Balance رو برای بار اول دیدم . Balance یه انیمیشن تولید شده بر پای تکنیک استاپ‌ موشن و بدون کلامه و میشه به صراحت گفت نسبت به انیمیشن‌های که امروزه میبینیم از ویژگی‌‌های بصری فوق‌العاده‌ کمتری بهره میگیره . ولی‌ چیزی که این انیمیشن رو به یه انیمیشن فوق‌العاده‌ و تاثیرگذار تبدیل می‌کنه موضوع و مفهومی هست که به بیننده منتقل می‌کنه اونم توی مدت زمانی‌ کمتر از ۱۰ دقیقه .
بد نیست بدونید ساخت Balance مربوط می‌شه به دوره بعد از کمونیسم در المان شرقی‌ . این انیمیشن رو می‌شه یک شرح زیبا از انحطاط و نابودی سیستم کمونیسم هم دونست .

و در آخر بهتون توصیه اکید می‌کنم که ۶،۷ دقیقه از وقتتون رو بذارید و این انیمیشن فوق‌العاده‌ رو ببینید .