گیک فارسی

نوشته های یک گیک فارسی از فعالیت ها ،‌ علاقه مندی ها و نقد هایش

خارج کردن زیرنویس از فایل‌های MKV

نویسنده:
۱۰ فروردین ۹۴

اگه تا حالا از فایل‌های MKV برای دیدن فیلم استفاده کرده باشین حتماً میدونین که این فایل در‌ واقع یک ظرف یا بهتر بگم Container برای صدا و تصویر و زیر نویس هستش. بعضی مواقع احتیاج میشه که زیرنویس فیلم که توی فایل MKV قرار گرفته را از اون خارج یا Extract کنیم.

برای این کار ابتدا باید با دستور زیر mkvtoolnix را نصب کنیم تا بتونیم از دو ابزار mkvinfo و mkvextract استفاده کنیم :

sudo apt-get install mkvtoolnix

حالا باید ببینیم فایل زیر نویس توی چه Track ی از MKV قرار گرفته. برای این کار از دستور mkvinfo به این شکل استفاده میکنیم :

mkvinfo movie.mkv

این دستور Track های قرار گرفته در فایل MKV را در خروجی نمایش میده و مشخص میکنه چه Track ی مربوط به فایل Subtitle میشه. کافیه شماره Track را جایی یادداشت کنیم یا به حافظه بسپریم.

حالا با دستور زیر میتونیم زیرنویس را (با فرض اینکه شماره Track اون ۳ هستش) از فایل خارج کنیم و در کنار فایل ویدئوییمون ذخیرش کنیم :

mkvextract track movie.mkv 3:subtitle.srt

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

حل دو مشکلی که در زمان ساخت یک Procedure یا Function در MySQL معمولاً پیش میاد

نویسنده:
۷ فروردین ۹۴

نمیدونم شما از Function ها ، Procedure ها یا حتی Trigger ها در MySQL استفاده میکنید یا نه و الان هم نمیخوام از بهینه سازی هایی که میشه از طریق اون ها به وجود آورد بگم. توی انجمن‌ها و در میان دوستان بارها دیدم که یکی از دلایلشون این هست که وقتی خروجی SQL میگیرن از روال یا تابعی که در MySQL ساختند و میخوان اون را توی PHPMyAdmin روی هاست اجرا کنند به خطاهایی بر میخورن که فکر میکنن دسترسی ایجاد روال یا تابع را ندارند یا کلاً با خطای غیر سر راستی مثل خطای ۱۰۶۴ مواجه میشن که برای هر نوع خطای Syntax یا مثلاً استفاده از Reserved Words میتونه باشه.

زمانی که از PHPMyAdmin یا MySQL Dump یا هر برنامه دیگه ای مثل Navicat خروجی میگیرین برای یک روال یا تابع ، توی جمله تعریفش از Definer استفاده کرده و این تعریف Definer دردسر سازه. به طور کلی کاربر برای اینکه بتونه Definer یک تابع یا روال یا … را کاربر دیگه ای قرار بده نیاز به Super Privilege داره.

حالا مشکل اینجاست که Definer ی که روی سیستم شما از MySQL خروجی گرفته میشه قائدتا (مگر اینکه نام کاربری روی سیستم شما و سرور یکی باشه ، مثلاً root که روی میزبانی های Shared احتمالش نزدیک به صفره) یکی نیستند و چون کاربری که شما برای MySQL از طریق CPanel میسازین دسترسی Super Privilege نداره خطای زیر صادر میشه :

SQL Error 1227: Access denied; you need the SUPER privilege for this operation

برای حل این مشکل کافیه Definer را از جمله Create حذف کنید یا نام کاربر سرور را با نامی که خروجی تولید کرده عوض کنید.

یکی دیگه از مشکلاتی که خیلی دیدم این هست که بعد از اجرا کردن Query مربوط به ساخت روال یا تابع خطای زیر را دریافت میکنند :

#۱۰۶۴ - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line N

این خطا مربوط میشه به بحث Delimiter ، همونطور که میدونین توی SQL وقتی میخواین چند تا دستور را پشت سر هم بفرستین به MySQL آخر هر دستور Semicolon میگذارین. حالا مشکلی که در زمان تعریف روال و تابع در MySQL وجود داره این هست که Semicolon هایی که بعد از Create یا Begin قرار میگیرن باعث میشن که تعریف کل تابع یا روال شکسته بشه و MySQL فکر کنه جمله Create کامل نیست.

راه حل خیلی ساده هستش ، کافیه در زمان اجرای Query به MySQL بگیم که از یک Delimiter غیر از Semicolon استفاده کنه. به این شکل :

delimiter $$
create procedure myProc()
begin 
SELECT * FROM table;
end;
$$
delimiter ;

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

معرفی و نظر من نسبت به فیلم علمی-تخیلی Interstellar یا همون «میان ستاره ای»

نویسنده:
۵ فروردین ۹۴

راستش یکی از ژانر هایی که اصلاً دوست ندارم علمی-تخیلی هست و خیلی فیلم معروف توی این ژانر هست که هنوز رقبتی برای دیدنش پیدا نکردم. حالا در سال جاری فیلمی با عنوان Interstellar اومده که یک داستان علمی-تخیلی فضایی داره و با توجه به موفقیت Gravity در سال گذشته و تیمی که پشتش هستند باید فیلم خوبی باشه.

فیلم Interstellar

وقتی نامزد های Golden Globe امسال معرفی شدن و فیلم فقط در بخش موسیقی اورجینال نامزد شد با توجه به سر و صدایی که فیلم کلاً داشت برام خیلی دور از انتظار بود اما وقتی نامزد های اسکار هم معرفی شدن و با وجودی که فیلم در ۵ رشته نامزد شده بود اما در نهایت تعجب ، هیچ کدوم از این نامزدی ها مربوط به جوایز اصلی نبود !!!

Interstellar در فصل جوایز کاملاً ناموفق بود و فقط تونست اسکار جلوه‌های ویژه بگیره. به عنوان کسی که حداقل ۱۰ سال هست جوایز هالیوود را دنبال میکنم کاملاً ناامید شدم چون اعتقاد داشتم اگه فیلم چیزی برای گفتن داشته باشه باید توی اسکار یا Golden Globe در رشته های اصلی کاندید بشه.

با توجه به چند موضوع باز هم در انتظار اومدن نسخه با کیفیت فیلم بودم. اول از همه اینکه فیلم‌هایی هستند که با بی مهری این مراسم ها روبر می‌شوند و ممکنه فیلم حتی ۱ درصد جزو اونها باشه ، نکته مهمتر هنرپیشه های بسیار موفق فیلم هستند. Matthew McConaughey و Anne Hathaway و Jessica Chastain از بهترین هنرپیشه های سال‌های اخیر بودن که جوایز معتبری را کسب کردند و مهمتر از همه کارگردان فیلم یعنی Christopher Nolan هست که فیلم‌های فوق‌العاده‌ای در کارنامش داره.

نیم ساعت پیش فیلم را تموم کردم و واقعاً برام هنوز جای سؤال داره که چنین فیلم فوق‌العاده‌ای چرا این چنین مورد بی مهری قرار گرفته. به جرأت Interstellar مهمترین فیلم سال ۲۰۱۴ بود و قطعاً لیاقت داشت برای بهترین فیلم ، بهترین کارگردانی و بهترین فیلمنامه نامزد بشه. شاید توجهی که سال گذشته به Gravity شد در بی توجهی به این فیلم نقش داشته.

توصیه میکنم که حتماً فیلم را ببینین و تحمل داشته باشین ، چونکه فیلم ۲ ساعت و ۵۰ دقیقه هستش و ممکنه توی یک ساعت اول انتظار ها را برآورده نکنه ولی در ادامه رضایت شما قطعاً جلب میشه. قصد ندارم بیشتر از این از فیلم تعریف کنم چون «مُشک آنَست که خود ببوید». امیدوارم از فیلم لذت ببرین.

یکی از دیالوگ های خوب فیلم :‌
«به کار درستی که به خاطر یک هدف غلط انجام میشه اعتماد نکن»
در ضمن من توی IMDB به فیلم نمره ۹ دادم.

رفع مشکل به هم ریختگی و تار شدن و به طور کلی Crash کردن Desktop

نویسنده:
۲۶ اسفند ۹۳

نمیدونم شما از چه توزیع و چه Desktop ی استفاده میکنید ولی من از Unity استفاده میکنم و گاه به گاه مخصوصاً روز هایی که خیلی با سیستم کار دارم یکسری به هم ریختگی های عجیبی توی Desktop به وجود میاد ، مثلاً خطوط عجیب میفته روی Wallpaper یا شکل Hint های Launcher به هم میریزه یا متون منو ها و Toolbar ها دچار تاری و به هم ریختگی میشه.

خوب راستش برخی از این مشکلات چون خیلی اذیت نمیکنه و مخصوصاً آدم راحت طلب و تا حدودی بی خیال مثل من پای سیستم نشسته واقعاً ارزش Restart کردن نداره ، اما برخی مواقع برای من هم این موضوع روی اعصابه و اذیت میکنه.

خوب ، چون با لینوکس طرف هستیم در نتیجه Desktop چیزی جز یکی از Application های جانبی سیستم عامل نیست و احتمالاً چون یک سرویس هم هست میشه Restart ش کرد. با کمی جستجو برای Desktop های مختلف (البته منظورم همون X-Server هستش) به دستورات زیر می‌رسیم :

– برای یونیتی از دستور sudo restart lightdm
– برای Gnome از دستور sudo restart gdm
– برای KDE از دستور sudo restart kdm
– برای برخی که از MDM استفاده میکنند هم sudo restart mdm

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

گیک فارسی یک ساله شد !

نویسنده:
۱۷ اسفند ۹۳

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

توی این یک سال با دوستان خیلی خوب دیگه‌ای که در زمینه وبلاگ های تکنولوژی کامپیوتر فعالیت میکنند آشنا شدم و اصلاً باور نمیکردم توی یک سال تا این اندازه بازخورد خوب و مثبت مخصوصاً در زمینه نرم‌افزار های سورس باز و سیستم عامل لینوکس بگیرم.

قطعاً در آینده به نوشتن مطلب در این وبلاگ ادامه میدم و امیدوارم بتونم تأثیر مثبتی هر چند کوچیک در بهبود وضعیت شغلی مربوط به رشته برنامه نویسی وب و احوالات عمومی خوانندگان داشته باشم.

در آخر هم از همه دوستانی که در این مدت من را مورد لطف خودشون قرار دادند متشکرم.

معرفی فیلم The Imitation Game یا همون بازی تقلید

نویسنده:
۱۵ اسفند ۹۳

امسال کلاً فیلم خیلی خیلی خوبی را ندیدم و توی مراسم اسکار هم طرفدار فیلم خاصی نبودم اما وقتی توی مراسم ، فیلم‌ها در بخشهای مختلف اعطای جوایز مرور میشد و جَو فیلم «بازی تقلید» را دیدم حس خیلی خوبی داشت چون شامل عناصری مثل جنگ جهانی ، جاسوسی ، کد انیگما ، رمزنگاری و … میشد.

بازی تقلید

وقتی در موردش توی IMDB بیشتر تحقیق کردم و متوجه شدم داستان فیلم واقعیه و در مورد یکی از نوابغ تاریخ کامپیوتر هست بیشتر مجذوب فیلم شدم و جالب‌تر اینجاست که امتیاز بالای ۸ توی IMDB داره (در تاریخی که این پُست نوشته میشه ۸.۲ امتیاز داره) ، کارگردانش Morten Tyldum یکی از کارگردان های نروژی خیلی خوبه که فیلم فوق‌العاده‌ای مثل HeadHunters را در کارنامه داره ، بازیگرانی مثل Benedict Cumberbatch (بازیگر سریال سری جدید شرلوک هلمز) ، Keira Knightley و Matthew Goode در فیلم ایفای نقش میکنند و توی ۸ رشته در اسکار از جمله بهترین فیلم ، بهترین هنرپیشه نقش اول مرد و زن نامزد شده و جایزه بهترین فیلمنامه اقتباسی را بُرده.

چاره‌ای جز صبر کردن نبود تا فیلم با کیفیت مطلوب بیاد و بعدش قضاوت کنیم. فیلم را بالاخره دیشب دانلود کردم و دیدم. داستان فیلم که خوراک آدم‌های علاقه‌مند به علوم کامپیوتر و تکنولوژی و در مورد یکی از نوابغ جهان یعنی Alan Turing هست که کامپیوتر های امروزی را مدیون تلاش‌های وی هستیم و معتبرترین جایزه علوم کامپیوتر یعنی جایزه تورینگ به تجلیل از وی نامگذرای شده.

فیلم همچنین به تراژدی (من اسمش را میگذارم تراژدی حالا دوست نداشتین بگین درام) که برای وی در میانسالی اتفاق افتاد و دوران تحصیلش هم می پردازه که به نظر من بجا بود و در درک بهتر شخصیت تورینگ بسیار مؤثر بود.

در مورد فیلم که جایزه بهترین فیلم نامه اقتباسی را از اسکار گرفت میشه به بازی بسیار خوب Benedict Cumberbatch و همینطور موسیقی متن فوق‌العاده‌ای که نامزد اسکار هم بود در کنار کارگردانی خیلی خوب و عوامل لباس و صحنه اشاره کرد و اگر من حق انتخاب بهترین فیلم سال را داشتم بدون شک این عنوان را به The Imitation Game میدادم.

من توی IMDB بهش نمره ۹ دادم و امیدوارم شما هم فیلم را ببینید و ازش لذت ببرین.