And, is programming only for geniuses? Can average persons with low programming aptitude succeed in programming.
If you can build spread sheets, and debug them, you can be a programmer.
If you can write recipes for other people, and they are happy with them, you could be a programmer.
It's all about knowing the small pieces that computers can do, and and building them up into a program, while simultaneously breaking down the task you want into pieces that the computer can execute.
Programming skill vs tackling real life problems are likely to be correlated, but I'm sure there are strong exceptions.
Like any skill in life, mindful practice is the key to getting better.
If it interests you enough, you probably won't be able to NOT try it.
But interests can hit at different times. Maybe it's interesting for you on weekends.
Practice can make it more reliable as a skill, less of a weekend thing maybe.
Programming is scheduling. Can you make a schedule? Like, what to do at 9 am, noon, etc.
Then, can you make one of the schedule items a decision? Like "if I am tired, take a nap. If not, do some gardening."
That's programming.
From that point it's just a matter of finding a programming language or a programming activity that you like.
A lot of the languages are already part of something you use. Like Google Apps Script can be used with Google products, if you use those. So maybe it's easier to start that way.
No genius is required. For some people it will take more time than others. Like anything else.
Is programming a way to survive and you’ve found yourself mixed up in it, or are you having self doubts about something you admire and determine for yourself?
Persistence is crucial, even for geniuses (I’ve been programming since child hood. vic-20 childhood.)
Will you loose days of sleep to save your ass after not putting your nose to the grind sooner?
Will you learn the true secret of masters, that someone else has likely solved your problem and you merely need to “adapt” it to your situation?
Will you get the job done, and stop being a part of the run around?
Computation is after all about results.
If these things you may be a programmer after all, however modest your present circumstance.
all i can say is something really simple:
*you need to try, and try again, and practise...regularly.
Down time at work- has had me start on Harvards CS50x and CS50p. I switched between them as i thought starting with Python would be a bit gentler. Which then led me to supplement both of these with Python Crash Course (the book) - which has been just so awesome.
I went from "ok, cool...hello world, whatever"...and "fucks sake, how do devs look at code Tand not get migraines"...to actually writing more than 5 lines of code, reading stuff on stack exchange and sort of following along.
I dont have a particular knack for any of this -i'd argue the amount of times i've tried and failed miserably at it should be enough to make me stop permanently.
But honestly - just doing it - every day, typing out every example of code in every example you read, running it over and over and over again...i'll be fucking damned if i wasnt leaps and bounds better than i was two months ago.
I distinctly remember thinking - "is programming really just always going to stack overflow and looking up the answers"....to actually at least stopping, and thinking HARD about wtf I am trying to do...slowing my mind down, and walking through words slowly...
So yeah -i'll say - for sure - I'm average as hell, and just trying every damn day has made a huge difference for me....and i've yet to scratch the surface! But comparing me with 2 months ago me, i couldnt be happier.
It's not just about problem solving. It's about finding a system to solve it.
It is not the domain of the genius. Anyone who gets frustrated at not knowing how something works, and goes and finds out, can be a great programmer.
Programming isn't for genius but I do think that you need above average IQ to succeed in it.
So long as you have a task just out of reach, you'll learn.