UNTOLD Mystery-Programming is HARD Only When…

Mohmad Yakub
Technology Hits
Published in
5 min readNov 18, 2019

Technical panelists always expect the programmer to be good at programming logic. A matter of fact is if a learner has got that confidence, then further advance technical learning will also be with much confidence.

In a nutshell, beginner’s confidence in programming capabilities has a direct relation with their low/average/high level of visualization of programming logic.

In the learning of any subject when the visualization and thought process becomes active then only it will become actual learning. The outcome is that the person will understand the concept and apply the concept naturally.

Solve pattern-recognition-based problems because it will improve the visualization of logic. After some level of practice, your mind will work like a mini debugger where you could be able to visualize the flow of data and how different variables are taking values at the fresh point of execution of code.

If a problem is asked in the interview or anywhere else, then we should be able to get the logic correctly in a single chance, instead of guessing. For example, consider this case where the programmer is expected to write a generalized solution so that based on input he/she is able to generate a wristwatch of customized sizes.

Programming is not about memorizing logic or downloading standard college/university level algorithms in our mind, rather we need to understand the approach to solve a problem. Developing a fertile ground for visualization of programming logic should be the prime focus in initial learning. Unfortunately, this perspective is almost missing.

Pattern-based problems are definitely a sure way to improve coding skills if followed in a proper approach and not by applying dozens of guesswork, just to solve a particular problem. Usually, learners try to implement the program by applying random guessing, which is the root cause of the bad way of learning. Guessing is not at all science and so can’t be computer science either. This will be basically against the very definition of the algorithm. Practice on distinct patterns helps in developing visualization of logic. These are just a few of them and better to practice with many possibilities. For a working example, please refer to the following post.

The pattern-based problem gives a lot of reasons to think logically in different directions and to work on it. The improvement in building logical skills and with interest is much higher than any other approach. On an experimental basis, this is one of the most interesting ways to learn to program quickly. Learning to use mathematically based problems doesn’t create much interest and on practical grounds, I find it is boring on steroids for most beginners. It will require the next thing to have a detailed study of data structures, algorithms, and their space & time-complexities.

Without sufficient logic building skills, the effort on learning Data-Structures and Algorithms will be like talking to an actual Gorilla, it will not be productive.

In data-structure, there are graph algorithms, tree algorithms, search and sorting algorithms. Likewise, there is a standard way to solve the pattern-based problem which clearly refines our fundamental logical skills. If pattern-based problems are not handled properly, it reveals logical weaknesses of a programmer. Remembering the logic of a program is something like converting programming into a subject of history, by killing the soul of programming, that is not algorithmic thinking. Without a doubt, logic-building skills related to programming are a difficult subject to teach, and teachers or training staff to search for the guidelines. Whether self-learning, logic-building skills or teaching it using pattern-based exercises is the easiest way out to create interest and confidence in the learners. We must learn/teach the subject of programming in the right way, only in the algorithmic way. I captured this complete thought process in the following eBooks which is nothing but a programming logic building exercise of one of its kind.

Java Programming:

https://www.amazon.com/dp/1073437515

The mentioned book will take you to an algorithmic way to solve the pattern-based problems and not by applying random guessing which is often taught by many. We can never reach far in learning by short-cuts or by sacrificing the actual values of a subject.

This book is an answer to that vacuum, which many non-confident learners feel while studying programming.

Also available in different programming languages.

A Humble Request: - It takes a good amount of effort to make that subject interesting to others. If possible, please suggest in your school/college and to your teachers.

Amazon has a 7-day return policy with a full refund. No way you will be at a loss.

These books are specially put to easily fill the much-needed gap in logic building skills which most of the books in programming missed and so it is especially for: -

  • WHO IS UNAWARE OF ANY APPROACH TO BUILD PROGRAMMING LOGIC?
  • WHO HAD A HARD TIME LEARNING TO WRITE A PROGRAM?
  • WHO ARE TEACHERS/TRAINERS AND LOOKING FOR A RELIABLE RESOURCE TO CREATE INTEREST IN THE SUBJECT OF PROGRAMMING FOR THEIR STUDENTS?
  • WHO HAD SOME EXPERIENCE IN PROGRAMMING AND NOT CONFIDENT ENOUGH?
  • WHO CARRIES THE FALSE NOTION THAT CODING IS ONLY FOR SUPER-SMART PEOPLE.
  • WHO IS LOOKING FOR A 1ST SOLID MOVE TO BECOME A SELF-TAUGHT PROGRAMMER?
  • WHO HAD SOME EXPERIENCE IN PROGRAMMING WITH PATTERN AND LOOKING FOR A STANDARD APPROACH TO GET THE LOGIC RIGHT FOR ANY LOGIC BASED-PATTERN?

. WHO IS THE VICTIM OF DISCOURAGEMENT COMMENTS, SIMILAR LIKE THE FOLLOWING?

Actually, you aren’t interested.
You lack patience and determination.?
Your IQ is well below average.

Learn happily and follow work ethics, definitely sooner or later you will become a talented programmer!!!

Failure taught me things about myself that I could have learned no other way.

- J.K. Rowling

--

--

Mohmad Yakub
Technology Hits

Programmer - mentor & author. Teaching Physics & Learning - Story Telling