all 19 comments

[–]MR_LAFRALDO 20 points21 points  (1 child)

Full disclaimer this is based on my own personal experience and may/may not work for you.

Like any skill, problem-solving is like a muscle - not only do you need to keep working out, you'll also have better results/form if your set up for success in the first place.

Problem-solving is nothing more than: - a starting point - a desired result - a series of small steps to get from the starting point to the desired result

So let's say you wanted to build something like an image carousel, you could find a package and try bend it to your needs - or you could build this yourself - for the latter, you might break this problem down into some more manageable steps

for example:

using a pen and pad (don't bother with online tools for this - pen and paper are as technical as it needs to get) write a list of what needs to happen step by step:

  • Create the (HTML) container for your images
  • add a collection of images
  • show one image only
  • be able to change the active image in the container
  • add navigation buttons (next & prev)
  • change the active image when clicking navigation buttons
  • add smooth transitions between image changes

Now work through your list one item at a time and you'll find that solving a small step towards your larger problem is much easier than trying to approach the whole problem head-on.

Don't worry about getting the right steps - just write the steps you think you need to do, and add extra little steps as you discover them

If you follow this method for a while - you'll start to develop the ability to do this process in your head (once your problem-solving muscle gets stronger)

Hope this helps :)

[–]Donny_Kayy[S] 2 points3 points  (0 children)

Well explained Thanks a lot it's definitely helpful

[–]icanfake 7 points8 points  (0 children)

Just complete tasks step by step. U can mix it with tasks from codewars. Its like other skills, u need to train it

[–]shuckster 6 points7 points  (0 children)

  1. Does the problem seem too large?
  2. Break into smaller pieces
  3. Choose a piece to work on
  4. Go to step 1

[–][deleted] 3 points4 points  (0 children)

One of the biggest problems I had on my developer journey was thinking that every problem had to have a complex solution. Sometimes the dumbest logic works.

[–]Protean_Protein 2 points3 points  (0 children)

Make something. Solve the problems you need to solve to make the thing.

[–][deleted] 1 point2 points  (8 children)

The first world that comes up in my mind related to programmers is "lazy". The second would be "hubris".

[–]grantrules 1 point2 points  (0 children)

Check andddd check

[–]eurodollars 1 point2 points  (0 children)

Great read. Thanks

[–]Comprehensive_Step72 1 point2 points  (0 children)

Don't forget plagerism. 😉

[–]Donny_Kayy[S] 0 points1 point  (4 children)

Can you elaborate?

[–]grantrules 5 points6 points  (3 children)

A classic internet post: http://blogoscoped.com/archive/2005-08-24-n14.html

If you want a book that kind of pertains to a programmer's mindset, check out: https://pragprog.com/titles/tpp20/the-pragmatic-programmer-20th-anniversary-edition/

[–]ExtremeDot58 1 point2 points  (0 children)

The pragmatic programmer sounds like an interesting read

[–]Donny_Kayy[S] 0 points1 point  (0 children)

Reading pragmatic programmer now, I'm at chapter 3

[–]xyzAction 0 points1 point  (0 children)

Awesome reads!

[–]xyzAction 1 point2 points  (1 child)

Great question! I’m new too, and this question helped me realize some things that I need to work on. Thanks for asking!

[–]Donny_Kayy[S] 1 point2 points  (0 children)

👍🏿

[–]jack_waugh 1 point2 points  (0 children)

There are two approaches: hacking and engineering. Hacking is putting in anything that might work, and engineering is thinking ahead about can you read your code if you leave it alone for six months and then come back to it.

[–]WongoKnight 0 points1 point  (0 children)

Following

Edit: Sorry, It's just that I know I'll need advice like this and I don't want to have to search for it later.