BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//American Young Coder - ECPv6.10.1.1//NONSGML v1.0//EN
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-ORIGINAL-URL:https://www.ayclogic.com
X-WR-CALDESC:Events for American Young Coder
REFRESH-INTERVAL;VALUE=DURATION:PT1H
X-Robots-Tag:noindex
X-PUBLISHED-TTL:PT1H
BEGIN:VTIMEZONE
TZID:America/Los_Angeles
BEGIN:DAYLIGHT
TZOFFSETFROM:-0800
TZOFFSETTO:-0700
TZNAME:PDT
DTSTART:20220313T100000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
TZNAME:PST
DTSTART:20221106T090000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220402T130000
DTEND;TZID=America/Los_Angeles:20220402T140000
DTSTAMP:20260428T083739
CREATED:20220402T211316Z
LAST-MODIFIED:20220402T211316Z
UID:12311-1648904400-1648908000@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the sound effect for firing the bullet.\nWe randomized the location of where the shield powerup is created.\nWe started on the logic to show the tank explosion before game over or game won.\n\nHomework: \n\nReview the tank game project and come up with some question for next class.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-55/
CATEGORIES:Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220404T160000
DTEND;TZID=America/Los_Angeles:20220404T170000
DTSTAMP:20260428T083739
CREATED:20220405T022839Z
LAST-MODIFIED:20220405T022839Z
UID:12334-1649088000-1649091600@www.ayclogic.com
SUMMARY:4 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed the following topics:\n\nHow to combine Strings with f”{name}”\nFor loop\nList\nHow to get input from Shell\nIF ELSE\n\n\n\nHomework\n\nString : Do Page 19 TRY IT YOURSELF: 2-1 and 2-2.\nString : Do Page 25 TRY IT YOURSELF: 2-4 and 2-7. If you don’t know how to do this\, look at page 18 to 24.\nInput From Shell: Do Page 117\, TRY IT YOURSELF: 7-1\, 7-2.\nList and For Loop: Do Page 89\, TRY IT YOURSELF: 5-8\nIf you have questions\, please email me at gamas@ayclogic.com
URL:https://www.ayclogic.com/event/4-pm-intro-to-python-gamas-2/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220406T180000
DTEND;TZID=America/Los_Angeles:20220406T190000
DTSTAMP:20260428T083739
CREATED:20220407T015800Z
LAST-MODIFIED:20220407T015800Z
UID:12367-1649268000-1649271600@www.ayclogic.com
SUMMARY:6 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe finished Hangman game. We added code to check if there is no more “?”\, we stop the loop.\nWe learn how to fix python errors:\n\nRun the program\nClick the blue line\nRead the error message\nFix the error\n\n\n\nHomework\n\nContinue fixing all errors in April6_FixPythonErrors1.py . If you fix all the problems\, it will look like below\nbudget1 250\nbudget2 110\nFalse\nIt is cool out there\nI live in Moscow\nHello Gamas Chang\n\nCreate a new python file April6_FixPythonErrors2.py\nGo to https://www.ayclogic.com/fix-python-bugs-2/ copy all the broken python codes and fix all the errors.
URL:https://www.ayclogic.com/event/6-pm-intro-to-python-gamas-6/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220406T190000
DTEND;TZID=America/Los_Angeles:20220406T200000
DTSTAMP:20260428T083739
CREATED:20220407T033424Z
LAST-MODIFIED:20220407T033505Z
UID:12373-1649271600-1649275200@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the game won and game over pages.\nWe added 3 different tower types for the tower for purchase\, tower and bullet.\n\nHomework: \n\nMake sure that the sword tower spawns fireball bullets in 8 different directions.  It should look like this:\n\n\n\n\nReview the code for tower of defense and come up with some questions.
URL:https://www.ayclogic.com/event/7-pm-python-game-development-116/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220411T160000
DTEND;TZID=America/Los_Angeles:20220411T170000
DTSTAMP:20260428T083739
CREATED:20220412T012707Z
LAST-MODIFIED:20220412T012707Z
UID:12449-1649692800-1649696400@www.ayclogic.com
SUMMARY:4 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed homework: String combination\, if else statements\, input from shell\, for loop List.\nWe went over while loop.\n\nHomework\n\nCreate Apr11_WhileLoopHomework.py\nDo codes TRY IT YOURSELF page 123: 7-4 and 7-5\nCreate Apr11_FunctionHomework.py\nCopy code from page 130.\nDo codes TRY IT YOURSELF page 131: 8-1 and 8-2
URL:https://www.ayclogic.com/event/4-pm-intro-to-python-gamas-3/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220412T163000
DTEND;TZID=America/Los_Angeles:20220412T173000
DTSTAMP:20260428T083739
CREATED:20220413T002933Z
LAST-MODIFIED:20220413T002933Z
UID:12469-1649781000-1649784600@www.ayclogic.com
SUMMARY:4:30 PM - Python OOP
DESCRIPTION:Homework\n\nContinue on Monster Inheritance project. We want to display attack menu after user enter a monster species in the main menu. Afterward\, if user enter sword attack\, do a random damage against the monster between 10 to 20 damage. The monster will also do some damage to the playerHealth. The monster damage would be between 10 to monster.maxDamage\nLook at example below\n\nYour have 200 health remaining.\nPlease choose your monster: \n   Troll - 50 healths - 30 Max attack points.\n   Water Golem - 30 healths - 20 Max attack points.\n   Dragon - 100 healths - 50 Max attack points.\nEnter your selection (enter "exit" to quit): dragon\n\nWhat do you want to do with the Dragon\n1. Magic attack\n2. Sword attack - 10 to 20 damage\nEnter your selection: 2\nYou attacked Dragon with 12 damage and the Dragon has 88 health remaining.\nDragon attacked you with 18 damage. Your remaining health is 182.\n\nYour have 182 health remaining.\nPlease choose your monster: \n   Troll - 50 healths - 30 Max attack points.\n   Water Golem - 30 healths - 20 Max attack points.\n   Dragon - 88 healths - 50 Max attack points.\nEnter your selection (enter "exit" to quit):
URL:https://www.ayclogic.com/event/430-pm-python-oop/
CATEGORIES:OOP Python,Python Class
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220413T183000
DTEND;TZID=America/Los_Angeles:20220413T193000
DTSTAMP:20260428T083739
CREATED:20220415T011829Z
LAST-MODIFIED:20220415T011829Z
UID:12496-1649874600-1649878200@www.ayclogic.com
SUMMARY:6:30 PM - Intro To Python - Latisha
DESCRIPTION:Today We Do\n\nWe reviewed 4 shapes homeworks\nWe continued with RobotBuilder project\, we created the rectangle function.\n\nHomework\n\nContinue with Apr13_RobotBuilder.py\nBy creating multiple combination of rectangles with different size\, coordinates and size\, create robot shape like below. To create the rectangle\, you have to call the rectangle function which we created in the class on April 13. You can find the coordinate for each of the rectangle below. For some of the width or height that is not specified in the screenshot\, just try to figure out your self. It does not have to be super accurate.
URL:https://www.ayclogic.com/event/630-pm-intro-to-python-latisha/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220413T190000
DTEND;TZID=America/Los_Angeles:20220413T200000
DTSTAMP:20260428T083739
CREATED:20220414T025959Z
LAST-MODIFIED:20220414T025959Z
UID:12486-1649876400-1649880000@www.ayclogic.com
SUMMARY:7 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed 1st quiz\nWe started Function without return value\n\nHomework\n\nCreate Apr13_FunctionNoReturnValueHomework1.py\nCopy code from page 130\nAnd do exercise from page 131: TRY IT YOURSELF
URL:https://www.ayclogic.com/event/7-pm-intro-to-python-gamas-12/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220418T170000
DTEND;TZID=America/Los_Angeles:20220418T180000
DTSTAMP:20260428T083739
CREATED:20220419T032653Z
LAST-MODIFIED:20220425T044724Z
UID:12549-1650301200-1650304800@www.ayclogic.com
SUMMARY:5 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed for loop and while loop\nWe reviewed function without return value\nWe reviewed function with return value.\n\nHomework\n\nCreate Apr18_FunctionsExercises.py\nDo exercises in https://www.ayclogic.com/python-function-exercises/
URL:https://www.ayclogic.com/event/5-pm-intro-to-python-gamas-3/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220419T073000
DTEND;TZID=America/Los_Angeles:20220419T083000
DTSTAMP:20260428T083739
CREATED:20220419T164300Z
LAST-MODIFIED:20220419T164300Z
UID:12566-1650353400-1650357000@www.ayclogic.com
SUMMARY:7:30 AM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed For Loop List (For Each)\nWe learned For Loop Range\nWe started While Loop\n\nHomework\n\nCreate Apr19_WhileLoopHomework.py\nCopy code from page 118 to 121
URL:https://www.ayclogic.com/event/730-am-intro-to-python-gamas-7/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220420T180000
DTEND;TZID=America/Los_Angeles:20220420T190000
DTSTAMP:20260428T083739
CREATED:20220421T033234Z
LAST-MODIFIED:20220421T033234Z
UID:12589-1650477600-1650481200@www.ayclogic.com
SUMMARY:6 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe continued to learn how to fix Python errors.\nWe reviewed a couple of problems from 1st quiz to prepare for next week 2nd quiz.\n\nHomework\nNext week is 2nd quiz\, please come 10 mins early 5:50 PM. \nStudy and redo the following exercises for your practice: \n\n1st quiz. You should have gotten your 1st quiz result from me. Redo the 1st quiz. Try not to look at my solution unless you are stuck. If you don’t get your 1st quiz result\, call me at 626-532-7844.\nYou should study functions with return value\, functions without return value\, random module and how to fix Python errors.\nTry to redo this exercise: https://www.ayclogic.com/intro-to-python-exercises/\nTry to do this exercise: https://www.ayclogic.com/python-function-exercises/\nTry to redo this exercise: https://www.ayclogic.com/list-inputs-if-and-else-loops-and-function/\nTry to redo this exercise: https://www.ayclogic.com/intro-to-python/magic-8-ball/\nIf you have question\, you can email me at gamas@ayclogic.com. Please give me a couple of days to respond to your email. If I don’t response\, you can ask your parents to call or text me.
URL:https://www.ayclogic.com/event/6-pm-intro-to-python-gamas-7/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220420T190000
DTEND;TZID=America/Los_Angeles:20220420T200000
DTSTAMP:20260428T083739
CREATED:20220421T025906Z
LAST-MODIFIED:20220421T025906Z
UID:12585-1650481200-1650484800@www.ayclogic.com
SUMMARY:7 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe learned about function with return value.\n\nHomework\n\nCreate a new python file Apr20_FunctionWithReturnValueHomework.py\nCopy codes from page 139.\nAlso create a function called: convert_from_hour_to_second. One parameter: hour. Return the result which is the conversion from hour to second. There are 60 mins in one hour and 60 seconds in one min. So there are 3600 seconds in one hour. This is very similar to convert_feet_to_inch function which we did in the class. Call the function\, get the return value and print the result.\n\nresult = convert_from_hour_to_second(2)\nprint(result) # 7200
URL:https://www.ayclogic.com/event/7-pm-intro-to-python-gamas-13/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220423T130000
DTEND;TZID=America/Los_Angeles:20220423T140000
DTSTAMP:20260428T083739
CREATED:20220423T211744Z
LAST-MODIFIED:20220423T211744Z
UID:12647-1650718800-1650722400@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the enemy sprite.\nWe added the logic to move the enemy on the map.\n\nHomework: \n\nCreate a new sprite class called “TargetPointer” which has a single parameter the screen.  The target pointer should move to the location of the mouse.  Use the “assets/images/target.png” image for the target pointer.  Make sure the target pointer has a rect attribute for collision detection which we will use later.  You can use the code we use for the play button to determine the location of the mouse and where the target is drawn on the screen.\nAdd a game landing page and a play button.  Use “button_play.png” for the play button and “logo.png” for the landing page logo
URL:https://www.ayclogic.com/event/1-pm-python-game-development-57/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220423T180000
DTEND;TZID=America/Los_Angeles:20220423T190000
DTSTAMP:20260428T083739
CREATED:20220424T020029Z
LAST-MODIFIED:20220424T020839Z
UID:12651-1650736800-1650740400@www.ayclogic.com
SUMMARY:6 PM - Intro To Python - Bill
DESCRIPTION:Today We Do\n\nWe created left_arm(x\,y\,color) function.\n\nHomework\n\nCreate right_arm(x\,y\, color) function\nAlso do last week homework: head\, neck\, eye balls\, mouth\, legs\, feet.
URL:https://www.ayclogic.com/event/6-pm-intro-to-python-bill-2/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220426T083000
DTEND;TZID=America/Los_Angeles:20220426T093000
DTSTAMP:20260428T083739
CREATED:20220426T163917Z
LAST-MODIFIED:20220426T163917Z
UID:12702-1650961800-1650965400@www.ayclogic.com
SUMMARY:8:30 AM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed While Loop homeworks.\nWe reviewed -=\, +=\, *= and /=\nWe reviewed if statements vs if elif statements.\n\nHomework\n\nCreate a new file Apr26_WhileLoopHomework2.py\nDo exercises from page 123: TRY IT YOURSELF 7-4 and 7-5
URL:https://www.ayclogic.com/event/830-am-intro-to-python-gamas/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220426T163000
DTEND;TZID=America/Los_Angeles:20220426T173000
DTSTAMP:20260428T083739
CREATED:20220429T011240Z
LAST-MODIFIED:20220429T011240Z
UID:12749-1650990600-1650994200@www.ayclogic.com
SUMMARY:4:30 PM - Python OOP - Gamas
DESCRIPTION:Today We Do\n\nWe continued with MonsterInheritance project.\n\nHomework\n\nInside your MonsterInheritance project\, create car.py\nCopy only Car class codes from page 168 into car.py.\nCreate electric_car.py and copy only ElectricCar class codes from page 168 into electric_car.py. On the top of this file\, import Car class. Look at how we import Monster class inside MonsterInheritanceMain class.\nInside car.py\, add a new method: fill_gas_tank. A method is a function inside a class.\nInside fill_gas_tank method\, print “The gas tank for this car is filled up”.\nCreate a new instance of Car class and call the fill_gas_tank method.
URL:https://www.ayclogic.com/event/430-pm-python-oop-gamas-10/
CATEGORIES:OOP Python,Python Class
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220427T190000
DTEND;TZID=America/Los_Angeles:20220427T200000
DTSTAMP:20260428T083739
CREATED:20220428T025404Z
LAST-MODIFIED:20220428T025903Z
UID:12715-1651086000-1651089600@www.ayclogic.com
SUMMARY:7 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed function with return value\nWe learned about random module.\nWe discussed on how to do the Magic 8 Ball homework.\n\nHomework\n\nCreate Apr27_Magic8BallV1.py\nFollow the instruction in https://www.ayclogic.com/intro-to-python/magic-8-ball/
URL:https://www.ayclogic.com/event/7-pm-intro-to-python-gamas-14/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220430T130000
DTEND;TZID=America/Los_Angeles:20220430T140000
DTSTAMP:20260428T083739
CREATED:20220430T210839Z
LAST-MODIFIED:20220430T210905Z
UID:12779-1651323600-1651327200@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework and added the landing page and added the target pointer sprite\nWe added waves and a way to keep track of the current wave.\n\nHomework: \n\nUpdate “create_enemy” to add a timer.  You can define a ENEMY_CREATION_DELAY of 40 frames and a new attribute enemy_creation_timer that keeps track of when it’s possible to create a new enemy.  Create a new enemy when enemy_creation_timer is equal or less than zero and the current wave has enemy types in it.\nAdd animation to the Enemy sprite.  Get rid of the self.image attribute and create a new self.images attribute that uses all 9 images from “2_enemies_1_WALK_000.png” to “2_enemies_1_WALK_009.png”.  Use similar techniques that we used for animation previously to alternate sequentially between all the different images in self.images to determine which image gets drawn on the screen.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-58/
CATEGORIES:Advanced Python Game Development
END:VEVENT
END:VCALENDAR