برنامه‌نویسی

نوآوری به روش Steve Wozniak


۳۰ اسفند ۱۳۹۹
نوآوری به روش steve wozniak

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

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

افراد زیادی Steve Jobs را به‌عنوان تنها دلیل موفقیت و نبوغ شرکت Apple می‌دانند اما این شرکت بدون وجود مهندس درخشانی مانند Wozniak از همان ابتدا شکل نمی‌گرفت زیرا او بود که ایده رایانه‌های شخصی را به واقعیت تبدیل کرد.

شاید بتوان اینگونه گفت که Wozniak کسی است که با ایجاد پروتوتایپ خود توانست چشم‌انداز Jobs را تغییر دهد و بدون جمع شدن این دو مرد بسیار تاثیرگذار در یک گاراژ، چشم‌اندازی که امروزه توسط Apple دنبال می‌شود هیچوقت شکل نمی‌گرفت.

با این توصیف‌ها باید اقرار کنیم که نبوغ و ابتکار Wozniak همان چیزی است که باعث ایجاد تحول در دنیای کامپیوترهای شخصی شده و اکنون با وجود اختراع‌هایی مانند Apple I و Apple II می‌توان به صراحت گفت که Steve Wozniak یک فرد افسانه‌ای در علوم رایانه است.

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

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

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

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

Steve Wozniak

Wozniak تمرکز بسیار بالایی بر روی فرایند ساخت کامپیوتر داشت و اغلب در حل معماهای فنی با سختی‌های مختلفی روبرو می‌شد زیرا او می‌خواست کامپیوتری بسازد که از نظر طراحی مهندسی و عملکرد نرم‌افزاری بسیار عالی باشد.

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

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

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

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

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

نتیجه‌بخش بودن محصول‌های شرکت Apple به این دلیل بود که Wozniak آن محصول‌ها را برای خودش طراحی کرده بود یا حتی iPhone و محصولی مانند Tesla نیز از همین قاعده پیروی می‌کنند. Wozniak در همین رابطه می‌گوید که محصول‌های بسیار خوب به این صورت طراحی می‌شوند.

تمرکز خود را بر روی خوب انجام دادن کارهای کوچک بگذارید

کمال‌گرایی و تلاش برای پیاده‌سازی کامل یک ایده از همان ابتدای توسعه بسیار غلط است. مسیر توسعه را به‌سادگی شروع کرده و سپس قابلیت‌های جدیدی به برنامه اضافه کنید زیرا ممکن است در ادامه‌ی مسیر پس از توسعه‌ی تعداد زیادی از قابلیت‌ها متوجه شوید که معماری سیستم شما دارای اشکال است.

Wozniak تاکید می‌کند که در مسیر نزدیک شدن به یک هدف بزرگ مطمئنا موانع زیادی وجود دارد و این یک واقعیت است که برای انجام هر کاری با ایده‌های مختلفی روبرو خواهید شد تا در نهایت به نتیجه‌ی مورد نظر خود برسید.

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

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

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

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

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

برنامه‌ها یا ابزارهایی بسازید که کار کنند و به‌تدریج ویژگی‌های اولیه آن‌ها را بهبود ببخشید.

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

Steve Wozniak

تا زمان رسیدن به بهترین نتیجه‌ی ممکن به refactor کردن ادامه دهید

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

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

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

سوال‌های زیر در حفظ این رویکرد به شما کمک می‌کنند:

  • چگونه می‌توان ویژگی‌های فعلی را بهتر کرد؟
  • آیا می‌توانیم کدهای کوتاه‌تری داشته باشیم؟
  • آیا می‌توانیم ساختار بهینه‌تری برای ویژگی فعلی پیاده‌سازی کنیم؟
  • چگونه می‌توان بهتر از هر انسان دیگری به بهینه کردن این ویژگی پرداخت؟
  • چگونه می‌توان رابط کاربری را اصلاح کرد؟
  • آیا ممکن است ویژگی اساسی دیگری مورد نیاز باشد که آن را فراموش کرده باشم؟

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

اولین کامپیوتر را با ۲۰۰ تراشه ساختم. پس از آن سعی کردم که با استفاده از ۱۵۰ تراشه و سپس ۱۰۰ تراشه همان کامپیوتر را بسازم. سعی بر این بود تا جایی که امکان دارد کامپیوتر کوچک‌تری داشته باشیم.

Steve Wozniak

منبع: https://medium.com/better-programming/innovate-like-steve-wozniak-8fca7a86c4e9