Session 1: I am taking this class so I can earn a certificate. I'm hoping this provides better financial outcomes and job security. I assume I'll be learning Python 3, because that is the default suggestion. I'm not sure yet what I will do with Pyhton skills, but using it for work is the main idea.
Session 2: I learned a bit about the fundamentals of coding. I saw how Github displays commit changes in revisions. While using Repl.it and Pythontutor, I executed code created via a Flowgorithm flowchart. I got a better sense of correct code from Pythontutor, as it gave me a very clear output. This is a very early step in learning to code. I hope it helps my career in some way, shape, or form.
Session 3: During these activities, I grew more comfortable with the Flowgorithm workflow. I learned how to use the variable functionality. To accomplish limiting my pay rate calculator to 2 decimal places, I found a youtube video: https://www.youtube.com/watch?v=mHCiQJTZsww; I can't say that I understand all the reasoning and whatnot. I merely copied the Youtuber's actions to accomplish a similar result. I also used the following to calculate seconds, hours, days, and months: https://www.google.com/search?q=how+many+minutes+in+year&oq=how+many+minutes+in+year&aqs=chrome..69i57j6j0.3655j0j4&sourceid=chrome&ie=UTF-8. Learning this information feels like a good building block to expand my knowledge.
Session 4: This week I learned how to convert my understanding of Flowgorithm coding to actual Python code. Well, that might be a bit of an exaggeration--I was mirroring the code examples in the book and performed little to no variation. This is good knowledge to build upon and gain a better understanding of coding. I used this link to figure out how to save as .py: https://blenderartists.org/t/converting-a-text-file-into-a-python-file-py/611655. I used this link to figure out the math equation: https://sciencing.com/calculate-square-yard-7891906.html. I used this link to double check that my program worked correctly: https://www.calculatorsoup.com/calculators/construction/square-footage-calculator.php.
Session 5: I didn't follow the directions correctly for this week's homework. I attempted a brand new activity (6 to be specific). I made the program in Flowgorithm. It took all day. I'm still not sure I understand how I fixed the program, but I accomplished the task through trial and error. To my surprise, I think it is much easier creating a program using code (Python) than flowcharting or pseudocoding. In the future I will follow directions better.
Session 6: I changed my folder nomenclature from assignments to sessions. I didn't like using similar words of assignments and activities. I went ahead and changed all of my previous activities to use functions for inputs, processing, and output. I've gotten more comfortable with functions as a result. Hopefully that will benefit me in the future.
Session 7: I created a new activity 5 starting with Flowgorithm. Afterwards, I cleaned up the Flowgorithm Python code. I also updated my age converter to include if/else functionality. I'm barely keeping my head above water, in my opinion. Flowgorithm is a pain, nothing new there. I had found writing code in Python less painful, but I spent numerous hours tracking down little mistakes for my age converter. I haven't put all the dots together yet and hopefully that happens sooner than later.
Session 8: At the risk of sounding repetitive, Flowgorithm gave me problems again. I don't know whether the cause is a logical disconnect, the syntax, lack of tutorials, or other. The difference in time spent on Flowgorithm and coding in Python is night and day. After a while, I figured out it was better to pump out source python code and take that into an IDE to debug. That worked well. From now on, I will take Flowgorithm problems to an IDE for debugging.
Session 9: I spent the better part of 36 hours doing these two activities. There are numerous reasons for this, including my own stupidity. A chunk of time was spent trying to figure out how to create a true test-after "do while" loop in Activity 1, in which the conditional involves a carriage return; problem with doing this is that the input must be tested as an integer (for integers) and as a string (when carriage returning)--breaking program. So I created something short of a true "do while" with help from this website: https://stackoverflow.com/questions/30315000/press-enter-to-exit-while-loop-in-python-3-4. Activity two involved similar problems. I originally created a random number guesser. However, I couldn't get Flowgorithm to generate numbers within the range of my high and low variables--I believe it can be done, but perhaps not in Flowgorithm. Anyway, this wasn't a great week for me.
Session 10: The "for activity 3" was smoother sailing than much of last week. The toughest part was figuring out how to alternate between adding and substracting. This site helped: https://stackoverflow.com/questions/39933509/alternate-between-add-and-subtract-on-a-list-of-numbers. Flowgorithm was not allowing the stated Python solution (count % 2). So I tinkered and found a similar workaround. It turned out the "nested for loop activity 1" was the harder task. Here are two links which helped me: https://www.youtube.com/watch?v=CqaB4B7xzNA and https://www.youtube.com/watch?v=Dpkfh-hX4-M. In both cases, I have no idea how they are getting their columns and rows to print without said instruction (though I do see the muliplication getting a print command). My understanding of Python needs a ton of work.
Session 11: So I changed things up a bit. I think I nailed down the v2 automated Monty Hall simulator, though my switch success rates seem a little high. I went back to cleanup my interactive v1 Monty Hall simulator and realized I had painted myself into a corner. Maybe I could have gotten out of it, but I don't know how. So I fused my versions together and v1 became a hybrid of old and new. It was a lot of work, though I got more comfortable with some aspects of coding in the process. The following resources helped: https://www.tutorialspoint.com/python/list_count.htm https://docs.python.org/3/tutorial/datastructures.html#more-on-lists
Session 12: I'm taking advantage of work that I did in the past. The dynamic grade averager is retrofitted with the newly requested funcitonality, including: dynamic array, high, low, average, and sort. It was still a bunch of work and I had to figure out all the little things along the way. These sources helped: https://www.geeksforgeeks.org/python-list-sort/, https://www.tutorialspoint.com/python/list_max.htm, and https://www.daniweb.com/programming/software-development/threads/173615/how-to-write-list-to-file-without-brackets. More of the same for activity 4, I used my old code and updated as assigned: dynamic array with total at end. The following source helped: https://stackoverflow.com/questions/34957491/python-setting-a-limit-on-a-variable. I spent a shameful amount of time trying to figure out a good way to add/subtract to my guesses variable so it could reach 0 and 100 while hitting every integer along the way. Hours of staring at the code and I already had the answer within, just limit the bouncer minimum to 1 (I had already limited the guess to stay within 0 and 100).
Session 13: I took the easier activities this week. Technically, I spent some time trying to cobble together activity 1. But I realized that I could not figure out a way to account for names like Jean Claude Van Damme or George Bernard Shaw. Regardless, the other two activities gave me a chance to get comfortable with some old concepts and new concepts. The following websites were used as a resource: https://www.programiz.com/python-programming/methods/string/strip, https://stackoverflow.com/questions/7844118/how-to-convert-comma-delimited-string-to-list-in-python, https://stackoverflow.com/questions/13443588/how-can-i-format-a-list-to-print-each-element-on-a-separate-line-in-python and https://www.codespeedy.com/how-to-remove-null-values-from-list-in-python/.
Session 14: So this week was a nightmare. I am completley reliant on Pythontutor showing me what's happening line-by-line. Furthermore, my limited knowledge/skills got exposed severely this week. I originally created a hybrid between assignment 1/2 and attempted activity 3. I spent plenty of time trying, but I could not complete activity 3. So I made separate activity 1 and 2 files instead. The entire internet could be listed as a resource this week. The pivotal references include: https://www.guru99.com/python-check-if-file-exists.html https://www.w3schools.com/python/ref_file_close.asp https://www.geeksforgeeks.org/find-average-list-python/ https://www.geeksforgeeks.org/python-converting-all-strings-in-list-to-integers/ https://stackoverflow.com/questions/3225305/how-to-check-if-an-element-of-a-list-is-a-number https://stackoverflow.com/questions/2462566/python-break-outside-loop https://exceptionshub.com/python-check-whether-a-file-is-empty-or-not.html https://stackoverflow.com/questions/19859282/check-if-a-string-contains-a-number https://stackoverflow.com/questions/1904394/read-only-the-first-line-of-a-file
Session 16: I am very much in the middle of doing this, with a couple of forks still in play. I am not sure that I am doing any aspect correctly, so the feedback likely will make some decisions for me. It's been a ton of work--I don't know if I can truly communicate the full extent. I've had to use new tools along the way, including working with dictionaries. I was spinning my wheels for days prior to finding the Final Project Approaches in the discussion board, which explained the unicode bit and the non-intuitive use of ElementTree. https://www.edureka.co/blog/python-xml-parser-tutorial/ https://www.datacamp.com/community/tutorials/python-xml-elementtree https://stackoverflow.com/questions/21179272/parsing-a-url-xml-with-the-elementtree-xml-api https://pythonspot.com/urllib-tutorial-python-3/ https://docs.python.org/2/library/xml.etree.elementtree.html https://stackoverflow.com/questions/1786476/parsing-xml-in-python-using-elementtree-example https://www.geeksforgeeks.org/xml-parsing-python/ https://stackoverflow.com/questions/26190160/how-to-find-length-of-dictionary-values https://stackoverflow.com/questions/26190160/how-to-find-length-of-dictionary-values/32592327 https://www.csestack.org/python-check-if-all-elements-in-list-are-same/ https://stackoverflow.com/questions/9426045/difference-between-exit0-and-exit1-in-python/9426115 https://stackoverflow.com/questions/43197594/convert-numbers-in-a-list-of-lists-to-float-in-python https://stackoverflow.com/questions/7002429/how-can-i-extract-all-values-from-a-dictionary-in-python https://stackoverflow.com/questions/9012503/iterating-through-dictionary-with-list-as-values-in-python https://stackoverflow.com/questions/8693867/python-list-replace https://stackoverflow.com/questions/54301753/how-to-print-every-nth-index-of-a-python-list-on-a-new-line https://stackoverflow.com/questions/59164351/joining-list-with-different-separators-in-python