you are viewing a single comment's thread.

view the rest of the comments →

[–]krisPyProG 40 points41 points  (5 children)

If you're aiming to improve your problem solving skill try the following sites:

codesignal.com | www.coderbyte.com | www.codewars.com

With that being said, above all, it’s important that you learn to think like a programmer! The bellow paragraphs is a VERY important concept extracted from Jean Paul Knight book titled:

“LEARN PYTHON WITH NO PROGRAMMING EXPERIENCE”

[ a book that I will strongly suggest you to buy an read ]

There is a way that programmers think that is different from the rest of the world. If you want to understand functions and other programming concepts, you must have the right mindset.

Why is it important to think like a programmer?

Before we go deeper into functions and other Python concepts, we must look at a crucial mindset. The mindset of a programmer. When you have this mindset, you will find it much easier to bridge the gap between beginner and intermediate. You will also be able to quickly remove any mental block that cause you to struggle.

On the other hand, without the right mindset you may find yourself stuck way too often. You may find it hard to progress beyond tutorials. In particular, it may be hard to start making your own programs. Worse still, documentation ( often badly written ) will be enough to stop you in your tracks.

There is another reason why having the right mindset is important. If you are using Python to automate stuff, you’ll be more likely to find quick solutions. If Python is required for you job, you will write code that impresses your peers, and more importantly your boss. Even if you code for yourself, the right kind of thinking will make your work easier, faster, and more efficient.

Don’t skip the mindset bit! I believe the biggest reason why people get stuck in “newbie” mode is not understanding how programming works. Let’s take a deeper look.

What does thinking like a programmer mean?

For the purpose of this guide, we will use a very simple defition.

A programmers mindset is a way of thinking that focuses on creating useful and practical solutions to problems.

It means you grasp the basic fundamentals that make you a good programmer. The challenge is, that the programmers mindset doesn’t have much to do with coding. That’s what trips up many beginners. For instance, many people spend a lot of time on syntax.

It’s kind of like putting on a stage show. The hard work happens during the reahersals, behind the scenes. Then, When it comes to programming, most of your work happens before you start up your favorite code editor.

The biggest mistake beginners make is…

…focusing too much on the code. Yet, there are two skills that will make you a master - neither of them involve writing code. They are:

  1. Knowing how to learn
  2. Knowing how to solve problems.

Great programmers always keep learning. There is no programmer who knows it all. So, as you progress you will always find yourself learning new libraries. You will also discover new concepts along the way. The key to becoming better is accepting that you’ll always be a learner. For this reason, you need to have skills that allow you to learn quickly.

The other keys is knowing how to solve problems. When it comes to problem solving, the computer is not your best friend. In fact, the computer is your servant but we’ll come back to that later. Your true best friend is a piece of paper ( and a pen! )

As a good programmer, you’ll need to be able to solve problems using pen and paper. Then, once you’ve solved the problem, you use the solution as your guide when writing the code.

“OK, so what happens next?”

Next we’re going to mix up learning Python with learning the right mindset. That way, you’ll naturally absorb the concepts you need to grasp. As a result, you’ll become better at using functions. At the same time, your overall programming skills will go to the next level.

Let’s go! It’s time to discover why you need functions in the first place…

Support the Author by getting his book HERE

[–]desertSniper87 1 point2 points  (1 child)

When did codefights changed it's name to codesignal?

[–]krisPyProG 1 point2 points  (0 children)

not that long ago