a programmer told me it’s all about knowing how you learn best
I found code for doing a Caesar cipher in Python that works in PsyScripter 3.1
v ungr zlfrys naq jnag gb qvr
That’s an encoded message when shift = 13. Decoding it would also use shift = 13.
A conversation regarding motivation:
ccc:clone want to learn Python programming with me?
ccc:do you think you could, if you wanted to?
ccc:like, if you really really wanted to?
ccc:are you unsure whether you could or not?
ccc:doesn’t that incite curiosity in you? can you or can’t you? isn’t there only 1 way to find out?
(https://www.khanacademy.org/science/computer-science/v/for-loops-in-python) a built-in python function called ‘range’. (written in the interpreter)
»> range (6)
[0, 3, 6]
an iterative loop:
for i in range(5):
sum = 0
for i in range(5):
sum = sum + i
——- I understand the above program. I made notes in my black hardcover notebook.
sum = 0
i = 0
sum = sum + i
i = i + 1
——-I understand why the above happens. See paper notes. What does this program do? It calculates the sum of of 1-10, which is 45.
Now I’m re-watching a video on strings: (https://www.khanacademy.org/science/computer-science/v/fun-with-strings)
a = “test_”
b = ‘string_’
c = “a_cool_monkey”
d = “3+9”
e = “a+b”
[‘a’, ‘cool’, ‘monkey’]
»> c.replace(‘o’, ‘O’)
»> c = c.replace(‘o’,’O’)
»> eval (e)
I work on an hourly basis and was scheduled for 0 hours this week. I could get depressed about this or I could take full advantage of it and spend more time doing other productive things, learning Python among them.
10:39 PM - I’m on Adderall XR 30 mg and coffee. I should watch
and https://www.khanacademy.org/science/computer-science/v/defining-a-factorial-function but I couldn’t bring myself to watch this one more than part way through.
…and I did the above while writing/copying/following along what was on the screen onto my white board (pic avail. upon req.).11:40 PM
The time now is 2:44 pm and I don’t feel like learning but I’m going to attempt to do it anyways. I just walked/jogged .25 miles. Ok. I’m Chronolapsing. Ok. Rewatching the video in the 3rd link. Following along with PsyScripter 2.7.
This hurts my brain.
number = input(“Enter a non-negative integer to take the factorial of:”)
product = 1
for i in range(number):
product = product * (i+1)
F this; I need my Adderall.
Okay so it’s been some number of months since my last post. I had/have all but given up on learning Python until I came across this video today: www.youtube.com/watch?v=nKIu9yen5nc “What most schools don’t teach.”
I used to take Adderall but for now I’m not taking it anymore. www.code.org might be a useful resource in the future. I need to reinstall the Python things that I had before. I guess now would be a good time to do that. I should keep “codeacademy” in mind, also.
-So I reinstalled the Python things now. I guess I’ll look at the encryption links again and try to get that Caesar Cipher program running again.
-So the web.mac.com links no longer work. I guess I need a new approach. I suppose I’ll go back to Khan academy. I joined the www.learnpython.org group on facebook.
So I want to make a program that converts a sentence typed using QWERTY into the sentence that would have been input, pressing the same keys, but with the alteration that a DVORAK keyboard combination is the output. The purpose of this program is to be able to encode text using simple substitution. I made one attempt to create the program, but it failed miserably. I wasted time trying to work with the actual substitutions that would be needed before I had any idea how the most basic operation actually occurs.
For this reason I have decided to simplify the program so that the most elemental mechanism is highlighted, and disregard working with QWERTY/DVORAK strings until I have a better understanding about what needs to happen and how.
I’m allowing myself, as a beginner, any amount of latitude with regard to programming inefficiencies, for now. I just want the program to work.
Given a string “AB”, I want to convert AB to an alternative form using these equalities: A = Y and B = Z. The final program should then read “YZ”. If I can make this relatively simple event occur, then I can scale up and use the full range of the alphabet and related conversions.
Some preliminary questions come to mind: how shall I begin? Should I just watch more videos and ignore DIY programs, for now? Should I use numbers instead of letters, at first? Is a program such as this ‘way out of my league’? Should the basic structure of the program, when running, look something like the following?:
Please type two letters.
AB transliterates to:
I ought to be able to type either AB or BA or AA or BB, and get the desired expected corresponding results, if I want to call this a ‘real’ program.
Now on an emotional note: I’m very scared to begin the process of learning how to get this done. I’m afraid I’ll never learn on my own, or never understand how it was that someone was able to construct the program if the case were to arise where someone ended up coding all this for me. I think I should just collect my printed notes, my whiteboard and markers, and play around with the interpreter interface thing (or whatever it’s called). Updates pending.
Update 1: Yes. Such a program would be over my head to understand, much less write, for a noob such as myself. I googled stuff and came up with this link: http://web.mac.com/mikejcowan/Ciphers/Appendices.html [EDIT: link no longer works]…My plan now is to play around with those programs, and see if I can get them to work for me, when I retype them and run them in my IDE. I already see things that I don’t know much of anything about. Updates pending.
Update 2: I’m temporarily abandoning Khan Academy as a focus and instead going to restart again using this link http://web.mac.com/mikejcowan/Ciphers/1._Introduction.html to learn from. Cheers. [EDIT: link no longer works]
Update 3: I’m reading from this above link, and I find it somewhat useful as a document that will increase my understanding of what all is involved. On a side note, I like the idea of encryption and ciphers. On another side note, there’s room to go up with regard to the overall quality of the writing style and content within this blog.
Update 4: I struggled through and tried to copy the program bit for bit, but it seems bloated imo. I am glad that I got the program working, however (even if all I did, in the end, was copy/paste code from the appendix). I’m going to experiment and try to unbloat it, now.
So I watched the first couple or few videos at www.KhanAcademy.org in the Python section. I skipped the section on binary numbers, since I feel I understand that concept well enough. I have a 2nd monitor to run the videos, and I am “sharing” the beginner Badges that I earn to my alternative Facebook account. This is not to say that I’m a shooting star, but nor have I given up on this goal. I’m on my 2nd cup of coffee for the day. I feel I might do well to make up a dictionary for the new terminology I come across as I do, but that’s another thought for another time.
install Python 2.7.3 — complete
install PyScripter IDE* — complete
Learn more. —
*Integrated Development Environment
Okay so I haven’t done anything related to Python yet PER SE. Where’s my cellphone? I think it’s in my car. There’s no way this blog can just be about Python. My life is as much as a barrier to me learning Python as the dedication and struggle itself will be during the actually studying and doing the code process.
One thing I have going for me is that I’m not pretending this can be a hobby or something. I want to make this my career, and a big part of life insofar as it will be one of the few projects in my life that I will have available to point at as a point of personal pride. I am and must be willing to make sacrifices, sooner or later. That’s something I’ve never been too great with.
Do I have ADHD? Someone felt comfortable enough to diagnose it with me. And am I affected by severe anxiety/depression? Is it undeniable that I have a self-defeating attitude? Do I have PTSD? Is there hope for me when just remembering SOMETIME during the day to take my pills makes me proud of myself (I haven’t QUITE missed a day, so far!).
Life isn’t easy. It’s harder for some - there’s no doubt about that. And people younger than I have overcome greater odds to make something of themselves already - that is surely true. I have a lot to learn, and I better be willing to stick it out more often than not, and be willing to take criticism without attitude, and all while worrying about other people’s well-being in the world as well.
More to come.
I guess this is blog is intended to chronicle my goal of ‘learning’ Python. Ideally the blog would be so great that it changes the world by bringing about a utopia for all, as well.
I had another blog, but it was just about personal things or reblogging or whatever, and didn’t really lead anywhere, so I permanantly deleted it.
I had a second blog that was about ‘REDACTED’, but it wasn’t particularly something I cared to attach my name to. I have played around with Sikuli(.org), but doing cool things got tedious, and I realized that if I’m going to really get anything really cool done quickly, I need to learn things more formally. A deciding factor for choosing Python is that it seems to be the language currently supported by KhanAcademy.org, which is a cool site.
I have too many interests and it’s time to make that jump in life and just pick something to pursue. Programming is interesting but I haven’t pursued it diligently for any length of time. I was reading the book Outliers, and it had a section on “The 10,000 hour rule.” I’m curious where I might end up if I put 10,000 hours of my time into ‘learning’ about programming and making programs.
Enjoy (or don’t, at your discretion).