التفكير الخوارزمي هو تحول عقلي عن الطريقة التي نفكر بها عادةً كأشخاص، بل إنها طريقة منهجية للتفكير في المشكلات والحلول بطريقة مشابهة لكيفية عمل الحاسبات وأجهزة الحواسيب المكتبية أو الشخصية أو حتى اللوحية، وهذه ليست مهمة مستحيلة أو غير قابلة للتحقيق لكنها صعبة في البداية فقط، وفي المرة الأولى أما إذا تعودت عليها؛ فسوف تلاحظ نتائجها الحقيقية المدهشة.
نبني جميعًا دون وعي اختصارات وافتراضات وقواعد أساسية نستخدمها لمساعدتنا في حل المشكلات اليومية دون التفكير العميق فيها. فعلى سبيل المثال، وفي مهمة بسيطة والمتمثلة في فرز عشرة أرقام تصاعديًا أو تنازليًا، يمكننا إلقاء نظرة عليها ومعرفة ما يجب أن يكون عليه الترتيب بسرعة كبيرة وترتيب الأرقام بشكل صحيح إذا ما طلب منا ذلك. ومع ذلك، يعتبر البعض أنه ليس معتادًا على تقسيم عمليات التفكير إلى خطوات فردية وترجمتها إلى ما يمكن أن يفعله جهاز الحاسوب ظنًا منه أنها صعبة، وهي على العكس تمامًا.
لا يمكن لأجهزة الحاسب الآلي الانتقال إلى قاموس المفردات أو المعجم الوسيط أو أي قاموس للمعاني والمفردات، والعثور على كلمة بناء على تهجئتها. بل يجب أن يكون لدى البرنامج بالحاسوب تعليمات محددة للغاية حول مكان البدء أو كمثال آخر مثال البحث عن اسم في دفتر الهاتف. فنحن كبشر أنعم الله علينا بعقولنا وقدرة دماغية (Cerebral Capacity)، والتي لا يستخدم البشر منها إلى نسبة متواضعة مما أنعم الله بها علينا؛ إذ إننا نعلم وعندما نريد البحث عن اسم أو كلمة ما إلى أي مدى نحتاج بدء بحثنا في كتاب ما أو نبدأ بالقرب من البداية، ونقفز إلى منتصف الكتاب تقريبًا لو أردنا في وقت البحث ونعود إلى الوراء قليلًا أو نتقدم بوتيرة أسرع، وهكذا أثناء عملية البحث تمامًا كما تحاول البحث عن سورة في القرآن الكريم برقم الصفحة. أما بالنسبة لمطوري البرمجيات والمبتدئين، من الصعب تقسيم هذه العملية، والتي تسمى عملية التفكير المنطقي الحاسوبي وترجمتها إلى خطوات قابلة للحساب، وذلك نظرًا لأن أجهزة الحاسبات لا يمكنها عمومًا إجراء التنفيذ أو اتخاذ القرار حول مكان بدء البحث في قائمة أو جدول أو مستودع بيانات على سبيل المثال من تلقاء نفسها. فكيف يكون التفكير الخوارزمي إذًا؟؟
مثل كل المهارات والجدارات، فهذا علم ومعرفة قابلة للتعلم أولًا لكنها تتطلب فقط الممارسة، وتحتاج أن تبذل قصارى جهدك وتقوم بتكرارها لتصل بها لمستوى التحسين المطلوب وتُعالج نقاط الضعف التي تجدها لاحقًا بها لكنك تمارسها دائمًا. وهناك بعض الإرشادات التي يمكن أن تُساعدك على الوصول إلى هناك بشكل أسرع. ففي جوهر هذا المبدأ أي التفكير الخوارزمي، والذي هو التفكير في كيفية حل مشكلة بطريقة منهجية بالخطوات التالية، وهي تحديد المشكلة بوضوح وتحليلها ودراستها، ثم تقسيم المشكلة إلى أجزاء صغيرة وبسيطة، وبعد ذلك تحديد الحل لكل جزء من المشكلة، وذلك بالتخطيط أولًا وتصميم وتنفيذ الحل واختباره ثم أخيرًا تطويره وجعله فعالًا، وهذه الحقيقة البسيطة هي أن الخوارزميات هي مجرد طرق للقيام بالأشياء، بل إنها أيضًا عمليات لحل نوع من المشاكل كالبحث عن كلمة في قاموس أو فرز قائمة أرقام أو إيجاد الأعداد الأولية مثلًا، أو طريقة تحضير وصفة طبخ معينة أو كيفية القيام بالغسيل في خطوات واضحة ودقيقة ومبسطة على سبيل المثال.
إن العديد من الخوارزميات مثيرة للإعجاب ومعقدة وتتطلب معرفة عميقة بنظرية الحاسب والمنطق الرياضي والتعلم الآلي، وقد لا يلم بها الجميع أو يفهم معظمها البعض ومع ذلك، لمجرد وجود خوارزميات صعبة لا يعني أن جميع الخوارزميات معقدة إلى هذا الحد. لكن لبدء التفكير خوارزميًا يمكنك البدء في التفكير في هذه التحديات بإحدى الطريقتين البسيطتين التالية وهي: (تقسيم المشكلة وبناء الحل) فقط لا غير. إن ميولك الطبيعية كمطور حلول أو مبرمج هو بناء الحل أولًا. ومع ذلك، أود في الواقع أن أدعوك إلى البدء بتفكيك المشكلة أولًا، وبعد ذلك بناء الحل فقط.
0