{"id":22,"date":"2025-03-05T02:01:29","date_gmt":"2025-03-05T02:01:29","guid":{"rendered":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/?p=22"},"modified":"2025-03-05T02:01:29","modified_gmt":"2025-03-05T02:01:29","slug":"capstone-2-blog-post-3","status":"publish","type":"post","link":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/2025\/03\/05\/capstone-2-blog-post-3\/","title":{"rendered":"Capstone 2: Blog Post #3"},"content":{"rendered":"\n<p>Hello reader!<\/p>\n\n\n\n<p>Work has slowed down and stabilized to a decent degree.<\/p>\n\n\n\n<p>There is a lot to learn, but our Capstone project is coming along quite smoothly!<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>The most difficult parts of this project were some of the <strong><em>bugs<\/em><\/strong>.<br>One bug for example, involved a <em>control conflict <\/em>between the code for remote input handling and the code for keyboard input handling.<br>It took me the whole term to understand that this is likely a <em>threading issue <\/em>and I have been able to find a very simple fix for it (to make the simulation check if the Web Socket has been binded to, only use keyboard keys otherwise).<\/p>\n\n\n\n<p>I chose this project because it had an interesting premise with a mentor assisting us. I figured this would be great to <em>gain experience with working in a team<\/em>.<br>Specifically in regards to teamwork, I feel a bit disappointed since we worked completely remotely so it was still solitary work, but my teammates have been a pleasure to work with.<\/p>\n\n\n\n<p>The project has been great and we&#8217;ve managed it as well as we could. <br>If there was one thing I would redo it would be the fact that we started the project with neat little divisions and that became a huge problem. <br>This was due to the fact that one of our teammates dropped out of the project. As such, we had to redistribute our workload.<\/p>\n\n\n\n<p>I didn&#8217;t have any doubts on my ability to complete this project and feel even better about it now than I did before.<br>There was definitely a massive learning curve and losing a key teammember was a bit daunting initially but we pulled through!<\/p>\n\n\n\n<p>We have managed to get this project working with a <em>lot of interesting quirks <\/em>such as the fact that we use are using a <em>virtual camera through OBS<\/em>, <em>Python code and Rust code<\/em>, a game simulation in 3D, video streaming, input handling, input logging, and <em>a ton of other small tweaks that we did not initially plan on adding<\/em>.<\/p>\n\n\n\n<p>Our project can be used by anyone who would wish to test their self driving algorithm and see if it is able to control a car remotely on a predefined path with prechosen terrain objects.<\/p>\n\n\n\n<p>This project has been very scary but also fun and has been a great learning experience.<br><\/p>\n\n\n\n<p class=\"has-normal-font-size\">I learned these 5 things from this project:<br><\/p>\n\n\n\n<p class=\"has-small-font-size\">1. Sometimes the most basic solution is also the best long-term.<br>2. Feature bloat is a massive deal, especially when using a Sprint based model.<br>3. Having good basics such as with algorithms, debugging, and lower level coding is a must have for most projects.<br>4. Team members that choose their own work tend to be far more motivated than when work is assigned.<br>5. Prioritization and reminders of prioties are much needed for long term projects. All teams will eventually drift off track with enough time<\/p>\n\n\n\n<p class=\"has-normal-font-size\">If I could start over I would prioritize different things than we did before. Our lack of experience played a huge role in not understanding proper time allocation for specific code sections and features. <br>For example, input handling proved to be a pain, but video streaming and line recognition was something we got working quite quickly.<\/p>\n\n\n\n<p class=\"has-normal-font-size\">There were a lot of such ups and downs on this project and <em>the best way I found to handle getting stuck was to write down my thought process<\/em>.<br>Stepping away from the computer and not coding but using pen-and-paper sounds counterintuitive but has been superb in helping me organize my thoughts and switch up my approach.<\/p>\n\n\n\n<p class=\"has-normal-font-size\">This is my main life hack for handling any work. <em>Giving your mind time to breathe, stepping away from the screen and from work and going for a walk, writing, or any exercise or art is best to improve your efficiency and your overall relationship with your work<\/em>.<br>I personally like playing guitar to destress.<\/p>\n\n\n\n<p class=\"has-normal-font-size\">Work has slowed down now that we have a few bugs and only one feature: the Decision System, left.<br>The project will be completed and ready to demo soon!<\/p>\n\n\n\n<p class=\"has-normal-font-size\">Thank you for reading!<\/p>\n\n\n\n<p>If you enjoyed reading this, consider connecting with me:<br><a href=\"https:\/\/www.linkedin.com\/in\/sahilgaikwad\/\">LinkedIn<\/a> <br><a href=\"http:\/\/gaikwads@oregonstate.edu\">Email<\/a><\/p>\n\n\n\n<p>P.S.: I have updated my LinkedIn link so the previous links may not work<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hello reader! Work has slowed down and stabilized to a decent degree. There is a lot to learn, but our Capstone project is coming along quite smoothly! The most difficult parts of this project were some of the bugs.One bug for example, involved a control conflict between the code for remote input handling and the [&hellip;]<\/p>\n","protected":false},"author":14503,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-22","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/posts\/22","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/users\/14503"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/comments?post=22"}],"version-history":[{"count":2,"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/posts\/22\/revisions"}],"predecessor-version":[{"id":24,"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/posts\/22\/revisions\/24"}],"wp:attachment":[{"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/media?parent=22"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/categories?post=22"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.oregonstate.edu\/impostersyndromecoding\/wp-json\/wp\/v2\/tags?post=22"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}