CSE 160 - HW4 - Advice from 15sp students: "What do you wish you had known before you started? What would you do differently? What advice would you offer to future students?" -------------------------------------------------------- Part I -------------------------------------------------------- I wish I had known how to use sets, dictionaries, and tuples a little better. My advice to students, is to have done practice problems, or research associated with that. It clears up any blur you have before doing the coding. I wish I would have known how much I struggle with implementing functions and studied it more carefully. I would have spent much more time practicing implementing functions if I had known how difficult it is for me to debug when something is not going according to plan. I would just advise students to attend class and pay attention. Also, get in the habit of practicing code outside of the course and learn to enjoy it. Start earlier and map out what functions correspond to your output Know what tools you have so you can match them to the problem. Have a list of all the python tools in your head(or on paper) such as loops, if statement, sets, dictionaries etc. This will help in reading the problem that you can figure out which tool is best for the job versus hunting through the slide decks to figure out shat to use. I wish I would have known how difficult this assignment was going to be. I felt as though there was a sharp curve in homework difficulty with this assignment but that may also be because I wasn't too familiar with how to use a dictionary. I would suggest knowing how to use everything that is going to be needed for this assignment before starting. Read up on sets and their callable functions. At first I had trouble with calling and defining certain functions because of the discrepancy of functions between lists and sets. Start early. The assignment was a lot longer than I initially thought. Before you start writing the program, I would recommend writing or graphing the expected results so you are able to check your work. I wish i had did a little more practice on function. But overall this assignment went pretty smoothly for me. Advice--read carefully and draw down the diagrams as you go. start early none, I feel that what I learned while I was doing the homework. make a lot print to show what the program actually produce. I started super early and wrote everything out on paper. I have a binder full of notes so that it was easier to assess what each function needed. It is longer than the previous homework but funner. I wish I had started this homework a little earlier(like Wednesday). should be very comfortable with using list, set, dictionary and tuble, and how to create, add, remove elements for those I wish I knew how to use the sort/sorted function. If I were to do it again I would have started much earlier. I would read over the syntaxes and explanations of different data structures. I got lots of errors while writing the code because I got confused with different kinds of data structure. I helps a lot to write down what you want from a function before you implement. -------------------------------------------------------- Part II -------------------------------------------------------- Know list slices because the hint helped me I wish I could get past a problem that allows me to complete the rest of the problems. It is REALLY tough to complete an assignment when I can not get past a function that is needed for other problems to move forward. I attended office hours multiple times but that was for one problem I was stuck on for days. I wish I had known about the issue in canopy and how we had to change and make sure the directory the program is was reading from, was from the same directory my program was in. This would have helped and I would have been able to spend less time on the program. Also when you read the code, try to make your program do the least possible work. My program was doing too much work and it would take my program forever to load. Made sure I understood certain concepts better before starting the assignment and reread what is being asked for in the assignment prompt I felt well prepared for this assignment given part 0 and part 1 of this assignment. I definitely wish I had started earlier. I would have moved on to other parts of the assignment when stuck instead of dwelling on the same issue for far too long. I would have also asked for more help and again, began sooner. My advice is that it is a good idea to start as early as possible and allocate your time wisely and work on the assignment every day. I got hung up on how to manipulate the file I was reading in, so I wish I had paid more attention to how we had worked with this concept in class and on past assignments This specific homework is quite alright. Start earlier as always choose appropriate function to call is the most difficult task. You should start doing this right after finishing Part I. I thought I needed to write new functions that called the earlier functions in order to solve problems 4, 6-8, but you don't need to. I'm struggling with returning out of functions, so this made the homework much easier. I also wasted a lot of time trying to make functions work though, which is frustrating. read lecture slides carefully and try to remember those operations I was lost for a few hours because I couldn't open the data file in the same directory. I should have checked discussion board earlier to know that I should have changed the setting in canopy to sync the directory. It is important to understand what is the required format of output. Wish I had a better understanding of dictionaries and for loops inside of for loops. I would create small test programs working with and looping through dictionaries. Advice: Spending time with the NetworkX graph documentation makes getting through the first few problems much easier. A word of advice would be to double check your code before running it. I'm used to just doing a little guess and check when first starting to write a function (or something similar), but this is a very large data set, so it's really important that you don't accidentally print out ten copies of every ID (I did not do this). I would highly recommend that future students start this assignment early. It took me a while to understand what the program was asking me to do. However, I felt that the homework was pretty straight forward once I knew what was being asked of me. --------------------------------------------------------