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