بایگانی دسته: فناوری

مباحث آی‌تی ما!

MusicBrainz Picard: یه برنامه برای درست کردن متادیتای موزیک‌های ناشناخته

به احتمال زیاد با برنامه‌هایی مثل Shazam یا SoundHound کار کردید یا اگه ویندوزفونی هستنید حداقل یه بار دکمه‌ی موزیک توی صفحه‌ی سرچ (یا کورتانا توی ویندوزفون ۸.۱) رو زدید ببینید چی می‌شه.

کاری که اینا انجام می‌دن گوش دادن به صداهای اطراف -> نویز گیری -> استخراج موسیقی‌ای که داره پخش می‌شه -> مقایسه اون با موسیقی‌هایی که توی دیتابیس‌شون هست و در نهایت اگر موسیقی‌ای که داره پخش می‌شه شبیه یکی از اونایی باشه که توی دیتابیس‌شون دارن اسم اون موسیقی رو به شما می‌دن.

MusicBrainz یک دانش‌نامه‌ی آزاد موسیقیه. در واقع یک دیتابیس عظیم از تعداد زیادی موسیقی و آهنگ‌ساز که هر برنامه‌ای می‌تونه ازش استفاده کنه تا بتونه مثل برنامه‌هایی که گفتم موسیقی رو تشخیص بده. تا جایی که می‌دونم این برنامه‌ها هم از همین دیتابیس استفاده می‌کنن (شاید دیتابیس‌های خودشون رو هم داشته باشن)

MusicBrainz یک برنامه‌ای هم داره (برای ویندوز، مک و گنو/لینوکس) که کارش اینه که بجای گوشی دادن و نویز گیری و اینا مستقیما فایل موسیقی رو بررسی می‌کنه و سعی می‌کنه اون رو توی دیتابیس‌ش پیدا کنه. اگه فایل (و در موارد کلی تر یک یا چندتا آلبوم) رو پیدا کرد می‌تونید ازش بخواید که متادیتای فایل رو براتون درست کنه. (مثلا Artist و آلبوم و اسم آهنگ بجای مقدار واقعیش www.kooft.com و ایناست … :|)

ادامه خواندن MusicBrainz Picard: یه برنامه برای درست کردن متادیتای موزیک‌های ناشناخته

چجوری از یه برنامه مثل دستور Command Line ویندوز استفاده کنیم

خیلی دنبال این موضوع می‌گشتم و حالا که پیداش کردم این نوشته رو می‌نویسم هم به عنوان یادداشت شخصی و هم شاید به درد یکی دیگه هم بخوره.

هدف اجرای این کار این بود که مثل لینوکس با aria2c از برنامه‌ی aria2 برای دانلود فایل استفاده کنم. البته من این رو نتونستم با کلیدواژه‌هایی که به ذهنم میرسید تو بینگ یا گوگل پیدا کنم و امروز که می‌خواستم پایتون رو بتونم توی CMD اجرا کنم نصب کنم بهش رسیدم :)

برای اضافه کردن دستور به CMD فقط کافیه کد زیر رو توی Windows Power Shell اجرا کنید.

[Environment]::SetEnvironmentVariable("Path", "$env:Path;DIRECTORY", "User")

و جای DIRECTORY هم آدرس پوشه‌ای که فایل exe توش هست رو بنویسید.

سرفیس پرو ۳، کامپیوتر جدید من، و توییت «فارسی» سرفیس به من!

من چند روز پیش یک Surface Pro 3 خریدم. این دستگاه، تبلت جدید مایکروسافته، که سخت‌افزار یه اولترابوک رو توی یه تبلت ۹ میلیمتری جا دادن.

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

ویدئوی آنباکسینگ، و همچنین یه بررسی کامل ازش رو احتمالن توی یک‌پزشک منتشر می‌کنم به زودی.

اما، چیزی که الان می‌خوام بهتون بگم اینه که من توی توییتر، چند تا توییت کردم در مورد سرفیس، و نتیجه این بود که اکانت رسمی توییتر سرفیس به من فارسی جواب داد!

راستشو بگم، خیلی هیجان انگیز بود :)

آخرین توییت من و جوابش رو می‌تونید ببینید:

surfaceofficialresponded

خب، توییت من یه مقدار شیطونی بود؛ و البته یه کمی هم به داغ‌شدن سرفیس هنگام کار سنگین اشاره داشت :) (سرفیس موقع کار سنگین یه مقدار داغ میشه، توی بررسی خواهم گفت)

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

پی‌نوشت: در حال نوشتن این پست بودم که اکانت سرفیس توییت یکی از دوستان در مورد پاسخ اونا به من رو هم favorite کرد.

surfaceofficialfavorited

 

پی‌نوشت ۲: من در مورد توییتشون یه توییت کردم، بازم جواب دادن!

surfaceofficialresponded2

 

 

Jadi2: یه افزونه برای راحت‌تر خوندن وبلاگ جادی

همون‌طور که می‌دونید جادی.نت (بخونید جادی دات نت :) ) و freekeyboard.net فیل*ترن و راه‌حل هم (غیر از استفاده از قندشکن و اینا) اینه که بریم تو جادی۲.آندو.ایت. ولی مشکل اینه که وردپرس حتی وقتی میریم تو جادی۲ بازم یه سری از لینک‌ها رو با جادی.نت می‌ده و این موضوع (حداقل برای من) آزاردهنده‌ست که هر بار بخوام آدرس رو به جادی۲.آندو.ایت تغییر بدم.

برای همین هم یه راه‌حل ساده درست کردم: (بالاخره برنامه‌نویس‌ها، برنامه‌نویس می‌شن که راه‌حل‌های ساده رو پیدا کنن دیگه :) ) نوشتن به افزونه که هربار رفتم توی جادی.نت منو ببره به جادی۲.آندو.ایت.

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

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

پی‌نوشت۲: این نسخه فقط وقتی برید به آدرس جادی.نت شما رو می‌فرسته به جادی۲.آندو.ایت. فعلا (تا آپدیت بعدی اگر آپدیتی وجود داشته باشه!) اگر عکس‌ها و فایل‌ها از جادی.نت بارگذاری بشن (و تو یه tab جدید باز نشن) آدرس‌ها عوض نمی‌شن.

تغییراتی که من روی پوسته دو هزار و چهارده اعمال می‌کنم قبل از استفاده‌ی نهایی ازش

همون‌طور که تاحالا متوجه شدید که بعد از طی شدن دوران ریکاوری بعد از کنکور دوباره اومدیم (اومدم!) سراغ دو برنامه‌نویس و یک‌سری تغییرات بنیادی (مثلا از اول ساختن سایت، دیتابیس‌ها و افزونه‌ها!) روش اعمال کردیم. من از پوسته‌ی دو هزار و چهارده خوشم اومد و تصمیم گرفتیم که از همین پوسته استفاده کنیم. ولی این پوسته مشکلاتی هم داره (داشت!) و باید یک‌سری تغییر روش صورت می‌گرفت (که این چند روز داشته صورت می‌گرفته!) که به حالت تا حدی مطلوب برسه. بدم نیومد که یه توضیحی بدم که چه تغییراتی روی پوسته انجام دادم شاید به درد یکی دیگه هم بخوره (فایل‌های تغییر یافته به صورت جداگانه توی گیت‌هاب موجوده) :

  • پوسته دو هزار و چهارده با صفحات عریض مشکل داره (شاید مشکل نباشه چون این چیزی نیست که از چشم تیم وردپرس دور بمونه ولی چیز جالبی نیست از نظر من) و همون‌طور که این‌جا میبینید حتی توی صفحه‌ی ۱۳۶۶ در ۷۶۸ هم حتی گوشه‌ی سمت چپ‌ش (توی نسخه‌ی راست به چپ) خالیه. برای رفع این مشکل توی انجمن‌های وردپرس چند خط کد css هست که با اضافه‌کردن اون به فایل style.css پوسته یا پوسته‌ی کودک مشکل حل میشه. (البته کدی که توی گیت‌هاب وجود داره یه ذره بیش‌تره و من اون رو از سایت سازنده‌ی پوسته ورداشتم که خودش بر اساس کارهای یکی دیگست :) )
  • برای اضافه کردن تغییرات خودم به پوسته یکی از ساده‌ترین (و در عین حال بدترین!) راه‌ها ویرایش مستفیم فایل style.css پوسته‌ست. حداقل ضررش اینه که اگه پوسته آپدیت بشه اون تغییرات از بین میرن. برای همین هم وردپرس یه راه‌حل جایگزین پیشنهاد می‌کنه و اونم استفاده از پوسته‌ی کودکه. پوسته‌ی کودک تمام فایل‌هاش رو از پوسته‌ی پدر به ارث می‌بره جز فایل‌هایی که خودتون اضافه کنید. (در این مورد فقط فایل style.css) و البته نباید فراموش کنیم که اگه فایلی توی پوسته‌ی کودک وجود داشته باشه وردپرس دیگه اون فایل رو از پوسته‌ی والد اجرا نمی‌کنه. اگه بعدا وقت شد یه نوشته راجع بهش می‌نویسم.
  • توی صفحه‌ی اصلی به دلایلی تصمیم گرفتم که تصویرهای شاخص (یا همون تامبنیل) رو نشون ندم. و این نوشته کمک کرد. من از روش اول‌ش استفاده کردم. و بعدش مجبور شدم تغییراتی توی css بدم چون نوشته‌ها یا خیلی از هم فاصله گرفته بودن یا رفته بودن تو هم.
  • فونت عنوان‌های صفحه‌ی اصلی رو کردم ۲۵ واحد. (کوچیک‌شون کردم)
  • نمی‌دونم چرا ولی حتی توی فایل rtl.css پوسته هم یک‌سری از فونت‌ها تاهوما نبودن و از نظر من فونت پیش‌فرض فارسی (که ما فونت پیش‌فرض استاندارد و رسمی نداریم!) زشته و برای همین هم اون فونت‌هایی که تاهوما نبودن رو تاهوما کردم. از جمله فونت ویرایشگر وردپرس (توی پوشه‌ی /wp-content/themes/twentyfourteen/css/editor-style.css پیداش می‌کنید) و فونت عبارت «اضافه‌کردن دیدگاه».
  • نمی‌دونم کی توی تیم ترجمه‌ی فارسی به ذهن‌ش رسیده که «thought» توی بخش دیدگاه‌ها رو «فکر» ترجمه کنه ولی به نظرم «دیدگاه» واژه‌ی مناسب‌تری اومد برای همین فایل ترجمه‌ی پوسته رو هم ویرایش کردم.
  • آخرین تغییر هم یه ذره توضیح داره. اگه برید آخر صفحه‌ی اصلی می‌بینید که با نوشته‌های «پسین» و «پیشین» مواجه میشید که برای رفتن به صفحات بعد هستن و کنارشون هم یه پیکان وجود داره. توی نسخه‌ی انگلیسی برای رفتن به صفحه‌ی بعد از پیکان سمت چپ استفاده شده و توی فارسی هم (در واقع توی فایل ترجمه) پیکان رو به پیکان سمت راست ترجمه کردن. حدس می‌زنم موقعی که توی CSS جهت صفحه رو تغییر می‌دیم (با ویژگی direction) جهت پیکان ها هم برعکس می‌شه و برای همین هم توی ترجمه‌ی اصلی پوسته پیکان‌ها برعکس هستن. برای همین هم دوباره فایل ترجمه رو ویرایش کردم و جهت پیکان‌ها (پسین و پیشین) رو عوض کردم.

اینا تغییراتی بود که من اعمال کردم و فایل‌های تغییر یافته به صورت جداگانه توی گیت‌هاب موجوده. به دلیل مشکلات افزونه‌ای نتونستم کدها رو این‌جا بزارم ولی فایل‌های گیت‌هاب توضیحات دارن. خوشحال می‌شم اگه مشکل دیگه‌ای توی سایت پیدا کردید در قالب دیدگاه یا ایمیل به info در 2barnamenevis.com به ما اطلاع بدید.

پی‌نوشت: این نوشته و پروژه‌ی گیت‌هاب با هر تغییر به‌روزرسانی می‌شه.

به‌روزرسانی ۱: خط زیر لینک‌ها رو هم حذف کردم.

چرا سی‌شارپ رو دوست دارم: یک جست‌وجوی ساده!

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

بخش جست‌وجو توی ویندوز ۸ یک کمی ناقصه و پاسخگوی نیاز من که می‌خواستم کلی فایل روی توی هاردم پیدا کنم نبود. برای همین هم یه کد ساده نوشتم که آدرس و چیزی که قراره جست‌وجو کنه رو از کاربر بگیره و همون‌جا هم خروجی بده (برنامه از نوع Console Applicationه. یعنی مثل سی‌پلاس‌پلاسی که ما داریم یاد می‌گیریم توی کنسول اجرا می‌شه و همون‌جا هم خروجی‌ش رو می‌ده)

ادامه خواندن چرا سی‌شارپ رو دوست دارم: یک جست‌وجوی ساده!

آموزش برنامه‌نویسی – بخش نهم – آرایه‌ها && توابع بازگشتی

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

ادامه خواندن آموزش برنامه‌نویسی – بخش نهم – آرایه‌ها && توابع بازگشتی

#توییتربازی من

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

-اتصال به توییتر

من اگر گوشی دم دستم باشه و پای کامپیوتر نباشم (که معمولاً هم نیستم) و یا بیرون خونه باشم، با اپلیکیشن People (اپلیکیشن مدیریت contactها و فعالیت اجتماعی) ویندوز فون به توییتر سر می‌زنم، توییت می‌کنم، ری‌توییت می‌کنم و چون نمی‌تونم فیو بزنم، فیو نمی‌زنم :) (دکمه‌ی favorite نداره این اپلیکیشن) چون نیازی به قندشکن و چی‌چی‌ان نداره و کار آدمو راه می‌اندازه.

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

در موارد خیلی نادری هم از اپلیکیشن People ویندوز ۸ استفاده می‌کنم که اون هم مثل نسخه‌ی ویندوز فونی خودش نیازی به قندشکن نداره. و قبلاً هم عادت داشتم از Tweet Deck استفاده کنم که الان دیگه کاربردی نداره.

برای در ارتباط بودن بیش‌تر با اونایی که منو فالو می‌کنن هم از unfollowers.me استفاده می‌کنم که زمانی که کسی شما رو فالو / آنفالو می‌کنه بهتون اطلاع می‌ده و ابزار (تا حدودی) کاربردی‌ای هستش.

و امروز هم توی #توییتربازی سالار در مورد SocialBro خوندم که فکر کنم از این به بعد (اگر وقت کنم بیام پای کامپیوتر) زیاد ازش استفاده کنم. این یه افزونه‌ی گوگل کرومه که اطلاعات توییتری شما رو آنالیز می‌کنه. مثلا تعداد فالورها یا افراد آنلاین و یا زمان‌های مناسب توییت کردن و… و افزونه‌ی کاربردی‌ایه. (از آنفالورز.می کاربردی تره)

-استفاده‌ی من از توییتر

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

توییتر البته جایگزین مناسبی برای بخش «دل‌نوشته» دو برنامه‌نویس بوده و تقریباً به اون‌جا نقل مکان کردم و گاهی اوقات سعی می‌کنم با خودم (و ۱۲۱ فالوری که نصف‌شون زبون فارسی نمی‌فهمن و نمی‌دونم چرا فالو می‌کنن!) درد دل کنم.

اما تویت‌هایی که بیش‌تر به آن‌ها علاقه دارم در موضوعات تکنولوژی، تفریحی و برنامه‌نویسی هستن که اون‌هایی که دنبال می‌کنم هم در همین دسته‌ها قرار می‌گیرن.

اگر شما هم می‌خواهید توی #توییتربازی شرکت کنید کافیه در مورد تجربه‌ی خودتون با #توییترفارسی بنویسید و با هشتگ #توییتربازی توییت‌ش کنید

آموزش برنامه‌نویسی – بخش هشتم – توابع

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

ادامه خواندن آموزش برنامه‌نویسی – بخش هشتم – توابع

آموزش برنامه‌نویسی – بخش هفتم – پایان حلقه‌های بی‌پایان!

سلام!
بعد از مدت‌ها (و احتمالاً پیش از مدت‌ها!) که نبودم و آموزش برنامه‌نویسی تعطیل شده بود بین درگیری‌های کنکور بالاخره وقتی پیدا شد که آموزش رو ادامه بدم و البته چون درگیری‌های کنکور روز به روز داره زیاد می‌شه معلوم نیست دوباره کی بتونم این کار رو ادامه بدم (امیدوارم که بشه ادامه بدم و اگر هم نشد مطمئناً بعد از کنکور ادامه میدم و برای همین هم توی پرانتز اول گفتم پیش از مدت‌ها!) و البته دیر و زود داره ولی سوخت و سوز نداره!

امروز می‌خواهیم باهم یادگیری حلقه‌ها رو ادامه بدیم.

ادامه خواندن آموزش برنامه‌نویسی – بخش هفتم – پایان حلقه‌های بی‌پایان!