زبان برنامه‌نویسی جدید مهندسی بدون کد از نمودارهای بصری استفاده می‌کند

شکل ۱. استفاده از نمودارهای بصری در زبان برنامه‌نویسی جدید بدون کد
شکل ۱. استفاده از نمودارهای بصری در زبان برنامه‌نویسی جدید بدون کد
منتشر شده در thenewstack به تاریخ ۲ جولای ۲۰۲۳
لینک منبع: Engineer’s New No-Code Programming Language Uses Visual Diagrams

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

همان‌طور که کرانچ در یکی از پست‌های وبلاگ اخیر خود نوشت: «شاید وقت آن رسیده که نحوه ساخت نرم‌افزار را دوباره ارزیابی کنیم؟»

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

اما آنچه که به همان اندازه قابل توجه است این است که چقدر او به دنبال این رویا بوده است. کرانچ افزود: «از اوایل دهه ۱۹۹۰، من به جای نوشتن برنامه‌ها، به فکر طراحی برنامه‌ها بودم.»

کرانچ در وبلاگ خود توضیح داد: «از جداول و نمودارها برای تقریبا هر طراحی پیچیده‌ای استفاده می‌کنیم، به جز برنامه‌نویسی…»

برنامه‌نویسی چند هسته‌ای بصری

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

و این چیزی است که او در مورد آن بسیار جدی است.

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

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

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

بنابراین کرانچ هنگام بازی با پردازنده ۸ هسته‌ای Parallax P2 الهام گرفت. یکی از چیزهای شگفت‌انگیز در موردKonneX توانایی ذاتی آن برای توزیع وظایف بر روی چندین هسته CPU بدون نیاز برنامه‌نویس به دانستن آن است... من فرصتی را دیدم که KonneX را احیا کنم. P2 به اندازه کافی قدرتمند است که KonneX را اجرا کند و به اندازه کافی ساده است که یک فرد بتواند کد کافی بنویسد تا برای کاربران قابل اجرا باشد.

برای چندین دهه، شرکت Parallax مستقر در کالیفرنیا لوازم آموزشی (از جمله کیت‌های رباتیک) تولید می‌کند. و خوشبختانه، کرانچ می‌گوید که آن‌ها نیز «یک شرکت کوچک و بسیار قابل دسترس بودند. من نرم‌افزار قدیمی‌ام را به نمایش گذاشتم، و وقتی بنیان‌گذار چیپ و [مدیر عامل] کن گریسی اظهار نظر کردند که چند سال پیش سعی کرده‌اند چیزی مشابه ارائه دهند، خوشحال شدم.

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

و کرانچ همچنین IDE را ساده‌تر می‌کند تا حس بصری‌تری به آن بدهد.

جذب بهره‌وری

این KonneX مزایای دیگری نیز دارد. هم‌چنین در چندین معماری CPU کار می‌کند. و مسائل گذشته را با بین‌المللی شدن حل می‌کند -زیرا به‌عنوان یک زبان بصری، می‌توان آن را به راحتی در ۱۹۵ کشور جهان پذیرفت. (کرانچ از این واقعیت ابراز تاسف می‌کند که در حال حاضر «اگر مترجمی برای یک زبان خاص از نظر اقتصادی مقرون به صرفه نباشد، این اتفاق نمی‌افتد.»)

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

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

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

به‌طور خلاصه، همان‌طور که کرانچ می‌نویسد، «همه چیز بسیار به هم ریخته است... تعجب می‌کنم که چقدر بهره‌وری به دلیل به‌روزرسانی‌ها از دست می‌رود...»

وب‌سایت خود کرانچ او را به‌عنوان یک متخصص رایانه توصیف می‌کند که از دهه ۱۹۸۰ با رایانه‌ها کار می‌کرد، «زمانی بدون سر کشیدن به کتاب‌خانه‌ها برای انجام کارهای پیچیده. زمانی که باید همه کارها را خودتان انجام می‌دادید.»

امروز کرانچ یک توسعه‌دهنده، یونیکس/لینوکس سیستم مدیریت و مهندس مستقر در نزدیکی برایتون، انگلستان است که اکنون به‌عنوان مشاور فناوری کار می‌کند. پس از سال‌ها تجربه، کرانچ فکر می‌کند به راهی برای بهبود نحوه تولید کد دست یافته است. کرانچ می‌گوید: «من معتقدم که KonneX ممکن است چیز بعدی در برنامه‌نویسی باشد» (در حالی که اضافه می‌کند: «من آزادانه اعتراف می‌کنم که احتمالا تعصبی در آنجا وجود دارد.»

کرانچ هم‌چنین فکر می‌کند که سیستم KonneX او می‌تواند به معرفی برنامه‌نویسی به کودکان کمک کند. کرانچ به من می‌گوید: «بچه‌ها آن را می‌فهمند (می‌دانم که آیا به این دلیل است که «از پیش‌برداشت‌هایی درباره برنامه‌نویسی بی‌طرف هستند.») بازار احتمالی دیگری که او می‌بیند، بازار در حال ظهور اتوماسیون خانگی است. کرانچ می‌گوید: «هر خانه منحصربه‌فرد است، همان‌طور که نیازهای هر صاحب خانه منحصر به فرد است. و تولیدکنندگان نمی‌توانند به همه آن‌ها رسیدگی کنند.»

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

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

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