میکروکنترلرها، طراحی و پیاده سازی – ریلیز شد!

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

سرفصل های کتاب :

فصل اول : میکروکنترل چیست؟
در این فصل کلیت یک میکروکنترلر و این که چه بخش هایی درونش به کار رفته، توضیح داده شده.

فصل دوم : چطور با کامپیوتر حرف بزنیم
در این بخش در مورد زبان های برنامه نویسی و مبناهای عددی و فضای ذخیره سازی دیتا صحبت شده.

فصل سوم : عملیات محاسباتی
در این فصل در مورد انجام عملیات ریاضی در مبنای دو صحبت شده.

فصل چهارم : عملیات منطقی
در این فصل در مورد جبر بول و نحوه انجام عملیات بولین صحبت شده.

فصل پنجم : مدارهای منطقی
اینجا، اومدیم و یه سری گیت های پایه رو بررسی کردیم. همینطور در مورد گیت های مادر صحبت کردیم.

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

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

فصل هشتم : حافظه
اینجا رسیدیم به مدارهای ترتیبی و حافظه ای، در اینجا لچ S-R رو ساختیم، در مورد لچ Active High و Active Low توضیح دادیم.

فصل نهم : رجیستر فایل
اینجا چندین رجیستر رو چیدیم کنار هم و یک رجیستر فایل طراحی کردیم.

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

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

فصل دوازدهم : کامپیوتر (تئوری)
در اینجا به صورت تئوری و روی کاغذ کامپیوتر اصل کاری طراحی شده. تصمیم گیری شده که چه کارهایی انجام بده و «سازمان کامپیوتر» در این نقطه مشخص شده.

فصل سیزدهم : واحد محاسبه و منطق
در این فصل، واحد محاسبه و منطقی برای کامپیوتر خودمون طراحی کردیم، و در مورد Instruction Code ها تصمیم گیری کردیم.

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

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

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

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

برای دانلود PDF هم میتونید از این لینک استفاده کنید.

FacebookTwitterGoogle+Share

سلول های دیجیتال!

بعد از مدتها، یک تاپیک قشنگ برای نوشتن پیدا کردم، شاید مدتها هم در همین مورد در وبلاگم بنویسم. موضوعی که در جهان، در کنار موضوعات دیگر مطرح هست، موضوعی هست به اسم زیست شناسی مصنوعی که به نوعی میشه گفت پیوند علوم مختلف با زیست شناسی، و تغییر در ساختار بیولوژیک موجوداتی هست که در اطراف ما زندگی میکنن. لینکی را در توییتر دیدم (و البته خاطرم نیست که کجا دیدمش، وگرنه لینک میکردم بهش) که نوشته بود دانشمندان با استفاده از DNA تونستند مدار منطقی بسازند. همونجا خشکم زد و گفتم چطوری میشه؟! تا این که این ویدئو رو دیدم. حقیقت اینه که تا قبل از این، دیده بودم که از نورون (سلول های عصبی) برای انتقال اطلاعات و پیاده سازی منطق های مختلف استفاده بشه، ولی استفاده از DNA برای من به شدت جدید و جذاب بود. و فکر نمیکردم که بشه از DNA ها، ساختار ترانزیستوری گرفت.

در حقیقت، چیزی که اینجا برای ما صفر و یک میسازه، الکتریسیته نیست. بلکه پروتئین ها هستند. در واقع شما دو نوع پروتئین دارید، که یکی نماینده صفر منطقی و دیگری نماینده یک منطقی به حساب میاد. حالا یکم دقیق تر پیش بریم، اگر ویدئو رو ببینید، خواهید دید که ساختار DNA یک نوع باکتری به اسم E.coli (با تلفظ ایکولای) مثل یک گیت NOR هست. یعنی همه منطق های موجود رو میشه با استفاده از این DNA طراحی کرد! نکته جالب تر و شگفت آورتر قضیه هم اینجاست که دانشگاه MIT پلتفرمی به اسم سلوکد منتشر کرده که شما با مراجعه بهش، میتونید کد Verilog بنویسید و تحلیل DNA ایش رو ببینید! و از همه جالبتر اینه که MIT کدهای نوشته شده شما رو، روی سلول های زنده تست میکنه!

تست سلوکد

خب برای این که این پلتفرم دوست داشتنی رو تست کنم، نشستم و یک معکوس کننده یا گیت NOT رو با Verilog HDL نوشتم :

کد   
module NOT(output out, input in);
 always@(in)
   begin
   case({in})
   1'b0: {out} = 1'b1;
   1'b1: {out} = 1'b0;
   endcase
  end
endmodule

بعد از این که روی دکمه Run کلیک کردم (البته یادتون باشه که قبلش تعدادی DNA Sequence رو به عنوان ورودی و خروجی انتخاب کنید تا تحلیل های درست و بهتری تحویل بگیرید) ، شروع کرد به تحلیل کردن. حالا نتایج رو با هم می بینیم!

شکل گیت NOT به صورت قسمتی از DNA :

inverter_A000_dnaplotlib_Eu_outخب، این شکلی هست که در «زیست شناسی مصنوعی» برای بخش های کوچک DNA و نمایندگی اون ها استفاده میشه. ورودی و خروجی های این طراحی ها Promoter هستند که اتصالات بین پروتئین ها رو میتونن به وجود بیارن. پس میشه در یک سلول زنده منطق های مختلف داشت، و ساخت. حالا، جدول درستی این ساختار رو با هم می بینیم :

inverter_A000_RFP_truthهمونطور که می بینید، با صفر و یک طرف نیستیم، بلکه دو نوع ماده شیمیایی هستند که نقش صفر و یک رو بازی میکنند. البته یک ساختار گیت هم برای این واحد ها در نظر گرفته شده که به این شکل هستند :

inverter_wiring_agrn

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

و آخرین چیزی که توجهم رو به خودش جلب کرد، نمودار زیستی ای بود که در خروجی قرار داشت و عملکرد گیت رو به صورت کاملا زیستی تحلیل میکرد :

inverter_A000_xfer_model_P1_PhlF

و البته یک ساختار گیتی دیگر هم داره، که «جنس» ورودی خروجی ها، همون پروتئین هایی که نماینده صفر و یک منطقی هستند رو برای ما مشخص میکنه :

inverter_A000_wiring_grn

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

موفق باشید :)

FacebookTwitterGoogle+Share

ساخت یک کلاک ساده با آی‌سی 555

وقتی که داشتم در مورد آی‌سی 555 و کاربردهاش تحقیق میکردم یک مثال ساده به چشمم خورد : چشمک زن با LED . خیلی از چشمک زن هایی که در اینترنت بودند رو تست کردم و ساختم و دیدم که کار بکن نیستن که نیستن! تا این که دیدم Ben Eater (کسی که یک کامپیوتر برد بوردی هشت بیتی ساخته) ، یک مدار Clock ساخته. یکی از کاربردهای Clock این هست که مدارهای ما رو در لحظات خاص فعال و در لحظات خاص غیرفعال میکنه. همچنین، مدارهایی داریم که میتونن چند تا کلاک رو هندل کنن و یا نیاز دارن دو تا کلاک داشته باشن که برعکس هم کار میکنن. کلاکی که بن ایتر طراحی کرده به قدر کافی خوب و مناسب هست، اما من یک فیچر (اگر بتونیم بهش بگیم فیچر 🤔) بهش اضافه کردم و محصول نهایی شد این :

timerهمانطوری که در شکل می بینید، خروجی کلاک درجای خودش به یک LED زرد متصل شده. و یک مدار ترانزیستوری هم بهش اضافه شده که حالا میخوایم بررسی کنیم اون چیه؟ اگر با NPN ها آشنا باشید میدونید که وقتی جریان در Base برقراره، امکان حرکت الکترونها از Collector به سمت Emitter هم فراهم میشه. یعنی در این مدار زمانی که خروجی ای که به اسم CLK مشخص شده، روشنه، جریان به راحتی از Collector میره به Emitter و اون LED قرمز که با CLK~ مشخص شده، خاموش میشه. زمانی که جریانی در Base ترانزیستور ما نیست، نتیجتا جلوی حرکت جریان از Collector به Emitter گرفته میشه و جریان به CLK~ میره. این به این معناست که زمانی که نیاز داریم کلاکمون برعکس بزنه، میتونیم از اون خروجی مدار استفاده کنیم! حالا یک سوال هست، و اون هم اینه که …

555 چطور کار میکنه؟

اگر دیتا شیت این آی سی رو بخونید، می بینید که پایه های VCC و GND اون با سه تا مقاومت پنج کیلو اهمی به هم وصل شدن، به همین خاطره که به این آی‌سی 555 گفته میشه. داخل آی‌سی، دوتا مقایسه گر و یک فلیپ فلاپ هست. در واقع زمانی که ما داریم از این آی‌سی کار میکشیم، مقادیر اون فلیپ فلاپی که درون آی‌سی تعبیه شده رو دستکاری میکنیم. برای اطلاعات بیشتر در مورد فلیپ فلاپ توصیه میکنم که دیتاشیت این تراشه رو مطالعه کنید.

در نهایت هم یک فیلم کوتاه از مداری که من ساختم ببینیم :

timer

حجم تصویر متحرک یکم بالاس به بزرگی خودتون ببخشید 😅 یک نکته هم توجه کنید زمانی که مدار رو بستم رنگ LED ها برعکس تصویر شماتیک بود، در شماتیک LED زرد به خروجی کلاک و LED قرمز به خروجی نقیض کلاک وصل شده.

FacebookTwitterGoogle+Share

#کارپینو، یا تاکسی نارنجی روی گوشی های هوشمند!

چند روز پیش، دوستی کارپینو رو به من معرفی کرد. رقیبی برای اسنپ و تپسی (و شاید استارتاپ های دیگر حوزه حمل و نقل درون/برون شهری ) که ظاهرا خود تاکسی رانی و شرکتهای تاکسی رانی خصوصی پشتش هستند، شما سفارش ماشین میدید و یک «تاکسی» میاد دنبالتون، یه چیزی مثل این 😀

IMG20145432

خب، این حرکت قشنگه ولی چند تا مشکل اساسیش تو چشم میزنه :

  • مسافر خودش باید دکمه «سوار شدم» رو بزنه، به نظر من احمقانه ترین چیزی که میتونه در چنین اپ هایی پیاده سازی بشه همینه! در واقع راننده هست که باید اعلام کنه مسافر سوار شده و سفر رسما آغاز شده، نه این که مسافر خودش اعلام کنه!
  • امکان امتیاز دهی به راننده وجود نداره، امروز عجله داشتم و راننده به موقع رسید، مسیر خوبی هم انتخاب کرد، ولی آخرش نشون داد به مبلغی که در اپلیکیشن وارد شده بی اعتنا بوده (در واقع ۹ هزار تومن بود و من ۱۰ تومن دادم، راننده پولی به من پس نداد تا خودم ازش خواستم که باقی پول رو پس بده) ، یعنی اگر اسنپ بود میشد ۴ از ۵ ستاره. من نتونستم بهش امتیاز مناسب بدم.
  • بعد از سوار شدن هیچ آپشن مسیریابی ای برای راننده فعال نشد، و راننده داشت از من مسیر میپرسید (البته انتهای راه). یکی از خوبی های اسنپ اینه که حداقل نیازی نیست در راه مسیر رو بگی و به کمک Waze (که البته الان جوابگو نیست!) و Google Maps و … ، خودش مسیر حدودی رو پیدا میکنه و فقط ممکنه در پیچ و خم ها و پس‌کوچه ها نیاز باشه که راهنمایی کنیم.
  • این برای من خیلی مهمه، عادت دارم که بعد از سوار شدن به اسنپ یا تپسی، پرداخت آنلاین انجام بدم و بنا به دلایلی تا جایی که بتونم از وجه نقد رد و بدل کردن در میرم! ولی این کارپینوی عزیز، هیچ آپشنی نداشت که بعد از سوار شدن بتونی پرداخت رو انجام بدی!
  • و آخرین مورد ، دقیقا همه پیام هایی که باید توسط راننده (موقع رسیدن، لغو سفر، … ) ارسال بشه امکانش هست که توسط مسافر ارسال بشه 😐 یعنی تغییری در محتوای پیام ندادند و همینطوری وارد اپلیکیشن شده!

گرچه، در وبسایتشون هم سوتی های خیلی عجیبی میشه پیدا کرد :

  • خیلی جاها اسم «ماکسی» به چشم میخوره، ظاهرا اسم اولی که برای استارتاپ (اگر بشه حتی اسمش رو استارتاپ گذاشت 😐 ) انتخاب کرده بودند ماکسی بوده، و بعد شده کارپینو. اما به خاطر عجله ای که برای لانچ کردن داشتند این مورد رو اصلاح نکردند.
  • وقتی روی آیکن Google Play کلیک کنید، به «کافه بازار» هدایت میشید! این هم چیزی بود که باعث تعجبم شد! با این که کافه بازار آیکن خاص خودش رو داره وبرای دانلود میشه ازش استفاده کرد ولی نمیدونم چرا اینجا از آیکن گوگل استفاده شده!

در کل، سرویس جالبیه ولی «خیلی خیلی خیلی» جای کار داره، خیلی از پیامها و محتوا باید عوض بشن، خیلی از آپشن ها باید اضافه بشن و از همه مهم تر این که باید برای مدیریت تراکنش ها و پرداخت ها سیستم خاصی پیاده سازی بشه که مشکلات برشمرده شده رو هم رفع کنه!

FacebookTwitterGoogle+Share

موسیقی Drone

اسم Drone برای اکثر ما، «پرنده هدایت پذیر از دور» یا همون «پهپاد» رو یادآور میشه، چون اکثرا این وسایل رو به اسم دِرون میشناسیم. اما، درون یک سبک (یا بهتر بگم استایل) موسیقی هم هست. در این پست، قصد دارم در مورد این سبک و این که کجاها و چطور استفاده میشه صحبت کنم. لازم به ذکره که این سبک از سبک های مورد علاقه خودم هم هست.

در ساده ترین شکل ممکن، درون به حالتی از نوازندگی گفته میشه که یک آکورد یا نُت، یا سرتاسر آهنگ کشیده بشه یا تکرار بشه. به این حالت گفته میشه Drone و خب یکی از مینیمال ترین سبک های موسیقی میتونه به شمار بیاد دقیقا به همین خاطر. از این استایل خاص، در سبکهایی مثل نئوکلاسیکال، امبینت و … استفاده میشه.

و حالا ببینیم که Drone چطور ساخته میشه؟ من چند تا روش جالب برای ساختن درون پیدا کردم، اولین روش اینه که از سازهایی استفاده بشه که صداشون خودش کشش داره. مثلا سازهای بادی، ویولن و … (این نشون میده که درون چیز جدیدی هم نیست و احتمالا در دوران قدیم هم به شدت استفاده میشده، اما به شکل سبک یا استایل مجزا بهش نگاه نمیکردن) ، در این روش شما کافیه یک نت یا آکورد دلخواه رو برای مدت زمان دلخواه بکشید. البته اگر از سازهایی مثل پیانو و گیتار و … هم استفاده میکنید، میتونید اون آکورد یا نت رو برای مدت طولانی، تکرار کنید. روش دوم استفاده از افکت های مجزا برای ساز هست. مثلا استفاده از پدال های Delay و Reverb و Fuzz برای گیتاز میتونه کمک خوبی باشه که Drone بسازیم، و برای این که نویز داخل صدا نباشه از Feedback استفاده کنیم. این روش رو معمولا کسایی که ترکیب درون با سبک های دیگه (مثلا راک یا متال) استفاده میکنن خیلی استفاده میکنن. روش سوم هم، که روش مورد علاقه خودم هم هست 😀 ، مهندسی صداست. خب این روش کمی آسون تر و به میزان زیادی جذاب تره، شخصا از نرم افزار Audacity و افکت های Change Speed , Delay, Reverb و افکت دوست داشتنی Paulstretch برای ساختن Drone استفاده میکنم. برای ساختن آهنگ هم یا از ساز (گیتار / هارمونیکا) و یا نرم افزارهای LMMS و TuxGuitar کمک میگیرم و بعد شروع میکنم به مهندسی صدا و آهنگ رو به شکل Drone/Noise در میارم. در پست های بعدی احتمالا در موردش خواهم نوشت 😀 .

موفق باشید :)

 

FacebookTwitterGoogle+Share

پیشنهادهای شما برای پیاده سازی یک ایده سخت افزاری

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

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

توی پست های جادی چند مساله جالب به چشم میخوره، اولیش اینه «چی نداریم؟! آیا وسیله ای هست اون کار رو انجام بده؟ اگر نیست، خودم میسازمش». و دومین نکته هم «پیاده سازی ایده و تبدیل کردنش به استارتاپ و حتی تا حدی به پول رسوندنش، اونقدر ها هم که فکر میکنیم سخت نیست». و حتی شاید سومیش این باشه که «معطل نکن، شروع کن به پیاده سازی». خب، حالا بیایم ببینم که من میخوام چی کار کنم؟ جادی به من ایده داد که ایده جمع کنم برای یک محصول سخت افزاری! اما محصولی که بشه به در یک مدت زمان نه چندان کوتاهی پیاده سازیش کرد و بعد ازش به پول رسید (بر خلاف StrongPC که بیشتر فاز تحقیقی داره).

ایده هایی که در ذهن خودم هستن اینان :

  • پیاده سازی یه دستگاه ساده با استفاده از میکروکنترلرهایی که توی بازار موجودند، و روبرو شدن با چالش هایی مثل مطالعه معماری، برنامه نویسی برای ریزپردازنده، طراحی مدارهای واسط و … .
  • پیاده سازی یه دستگاه ساده با استفاده از آردوینو و ماژول هاش
  • پیاده سازی یک دستگاه ساده IoT طور با استفاده از Cubieboard یا رزبری
  • و …

حالا از شماها که این پست رو میخونید، میخوام در این باره کمک بدید. اول این که «دستگاه ساده» چی میتونه باشه (مثلا ساعت؟! تقویم رومیزی؟ سیستم اطفاء حریق و …) و دوم این که با چی و چطوری پیاده سازی بشه. بعد از این که ایده مشخص بشه، مرحله مرحله پیاده سازیش در همین وبلاگ، گزارش میشه.

FacebookTwitterGoogle+Share

پروژه گاه‌شمار

خب، من در گروه های تلگرامی این پیام رو میذاشتم :

دوستی مدتی پیش (که خیلی هم ازش نگذشته ) یک چالش رو بعنوان تمرین برنامه نویسی پیشنهاد داد، و اون هم نوشتن یک API بود برای دریافت ساعت و تاریخ.
من هم وارد این چالش شدم و یک API با روبی و سیناترا نوشتم، روی گیتهاب هم قرارش دادم ولی الان دپلویش کردم که اگر شما هم خواستید بتونید ازش استفاده کنید :
https://gahshomar-api.herokuapp.com/

خب، این هم پروژه ای بود که محسن بعنوان تمرین خواست که ما یه API بنویسیم، من هم این رو با Sinatra نوشتم و الان دپلوی شده و در دسترسه! امیدوارم ازش لذت ببرید :)

FacebookTwitterGoogle+Share

رضایت و نارضایتی، از دربستی های موبایلی

uber-login-signup

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

 

 

 

توییت اول، پیگیری پشتیبانی اسنپ (که خودم چندین بار باهاش مواجه شدم) رو نشون میده. از این بابت کارشون قابل تقدیر و تشکره که حتی شده به ظاهر هم دنبال رفع نارضایتی هستند. اما توییت دوم، داره یک نارضایتی کلی رو بیان میکنه، آیا همه اسنپ های خالی رو نشون میده؟! یا هر اسنپی که دور و برمونه؟ حالا این مقوله، کاملا بر میگرده به این که کد چطور نوشته شده. اما دلیل اصلی نارضایتی اینه که چرا توی روز بارونی (یا شرایط مشابهی که باعث میشه راننده های «مستقل» گرون تر بگیرن) راننده ای اکسپت نمی کنه! که این به نظرم توجیه و آموزش راننده رو نیاز داره. و اما توییت سوم … کمی بی ادبانه و با لحن تند بیان شده. به نظر من لحن قشنگی نیست، اما صراحتی که در بیانش داشته واقعا جالبه. چیزی که خودم هم بهش رسیدم. راننده ای که همه جوره بهش فهموندم دوست ندارم زیاد حرف بزنه (حتی با گذاشتن هدفون و بلند کردن صدا تا حدی که بفهمه دارم آهنگ گوش میدم) ، گرفته تا راننده ای که حاضر نبود از نقشه استفاده کنه!

بیایید توییت های بیشتری رو بررسی کنیم و ببینیم که مردم دیگه از چه چیزی توی این سرویس ناراضی هستند :

خب، این توییت نارضایتی از قیمته. شاید الگوریتم قیمت گذاری تغییر کرده که بازی رو برد-برد کنه. مثلا شده که مسیری رو با ۱۴ هزار تومن رفتم، و موقع برگشت (که ساعت ترافیک دار بوده) هزینه رفته روی ۱۵ یا ۱۶ هزار تومن. البته هنوز مطمئن نیستم که این بخاطر موقعیت من در مبدا برگشت بوده، یا بخاطر ترافیک زیاد.  

در این توییت هم شاهد نارضایتی از ماشین نداشتن، و غیرقابل اعتماد بودن هستیم. در واقع ایشون بیان کردن (برداشت من البته!) که در ساعتی که ایشون نیاز مبرم به ماشین داشته، احتمالا اسنپ ماشین نداشته. شاید آژانسی که معمولا ازش ماشین میگیره، ماشین نداشته و نزدیک ترین شریان اصلی و ایستگاه تاکسی برای دربست گرفتن هم ازش خیلی دور بوده. خب این مشکل رو به همین راحتیا نمیشه حل کرد و باید زیرساختی تر حل بشه. نه تنها آموزش درست و با کیفیت میخواد، بلکه نیروی کار سازمان یافته بیشتری هم نیاز داره.

 

خب اینجا به همون مشکل الگوریتم قیمت دهی اشاره شده باز. به نظرم بهتر بود در آپدیتی که این رویه در پیش گرفته شده بود، اطلاعی به کاربران داده میشد.

و اما … در کل، میزان رضایت بیشتره یا نارضایتی؟

به عنوان یک کاربر سرویس، شخصا بیشتر ناراضیم تا راضی. چرا که :

  1. در ساعتای شلوغ و پرترافیک، کم پیش میاد که با همون بار اول درخواست اسنپ دادن، ماشینی پیدا شه که اکسپت کنه.
  2. راننده های نزدیک، زودتر پیام رو دریافت نمیکنن، و نتیجه میشه این که راننده ای که در میدان نور (تقاطع کاشانی – ستاری) حضور داره، مسافری رو از شهر زیبا (منتهی علیه غربی کاشانی 😐 ) رو اکسپت کنه و این خودش معطلی برای مسافر هست
  3. خیلی از مشکلات کلاسیک مردم با راننده ها حل نشده. یک نمونش راه بلد بودن هست، نمونه دیگرش پرچونگی و پرحرفی راننده ها، که اگر هشتگی مثل «راننده»، «مسافر کش» یا «راننده تاکسی» رو در توییتر سرچ کنید، میرسید به این مشکلات.

و با گشت و گذار در توییتر هم بیشتر به ناراضی ها میرسیم. میشه گفت که مردم وقتی راضی باشن فیدبک نمیدن یا خیلی کم پیش میاد که فیدبک بدن. اما مردمی که ناراضی هستند معمولا خیلی سریع عدم رضایت خودشون رو جایی که میدونن پشتیبانی اون سرویس فعال هست، منتشر میکنن تا فیدبک بگیرن (مثل اولین توییتی که بررسی کردیم). حالا مهم نیست که کدوم بیشتره، مهم اینه که چرا انقدر ناراضی داره این سرویس؟! چرا با سرچ هشتگ، بیش از این که به معرفی و … برسیم، به نارضایتی رسیدیم؟! این ها سوالاتی هست که باهاش مواجه هستیم. سوالاتی که برای یک بیزنس میتونن بسیار بسیار مهم باشن.

ریشه مشکل کجاست؟ چاره چیه؟!

خب، ریشه مشکل میتونه احتمالا عدم وجود زیرساخت، و نداشتن دانش مدیریتی و تجاری کافی باشه. با حالت مافیایی ای که بازار به خودش گرفته، عده ای خاص (که عموما سواد درست و حسابی هم ندارند) میشن CTO و مدیر روابط عمومی و مدیر داخلی و این عناوین خوشگل رو میگیرن. حالا مهم نیست که این اتفاق افتاده، بریم سراغ زیرساخت. ما میدونیم که عموم افرادی که توی کشورمون اسمارتفون های گرون گرون میخرن، یک دلیل بیشتر نداره، اونم اینه :

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

با اصلاح مواردی که در این متن گفته شد، میشه تا حد زیادی به مشکلات رسیدگی کرد. آموزش درست راننده و مسافر، داشتن یک نرم افزار User-friendly تر و با UX بهتر و … همش میتونه به بهتر شدن و افزایش میزان رضایت مشتری، کمک کنه!

در آخر هم ممنونم که این پست بلند و بالای من رو خوندید! در مورد Uber هم در تصویر اول متن بگم که همینطوری خواستم بذارم، چون مشابهش رو برای اسنپ پیدا نکردم 😀 

موفق باشید :)

FacebookTwitterGoogle+Share

دوستی با محصول جدید اتودسک

اکثرا میدونیم که شبیه سازی و استفاده از بردهای آردوینو و AVR و … ، برای کاربران لینوکس خیلی مشکله. حتی شبیه سازی ساده مدارهای الکتریکی و الکترونیکی هم مشکلیه که اکثرا کاربران لینوکس باهاش روبرو هستند. اما امروز، میخوام ابزاری رو معرفی کنم، که هم رایگانه و هم تحت وب. به شما امکان کد زدن روی آردوینو و تست کردن مدارهای مجتمع، ساختن مدارهای دیجیتال و آنالوگ رو میده.

شرکت اتودسک که پیش تر با محصولاتی مثل اتوکد و مایا شناخته شده بود، الان اومده محصولی به اسم 123D Circuits رو ارائه کرده که با ساختن یک اکانت و عضویت درش، میتونید به راحتی آزمایشات الکترونیکی خودتون رو انجام بدید.

این هم نمونه مداری که بستم، یک آی سی 7408 هست که داره دو ورودی رو با هم AND میکنه :

کافیه روی start simulation کلیک کنید و بعد با کلید ها بازی کنید تا تغییرات توی ولت متر و LED قرمز رنگ روی برد بورد رو شاهد باشید.

FacebookTwitterGoogle+Share

نسخه اسپرانتوی وبسایت!

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

 

FacebookTwitterGoogle+Share