Current CS interests

As I get to learn more about the computer science, there are two areas that caught my attention and fascinated me. The first one is the machine learning, and the other one is the cloud development.

Machine Learning is one of the most crucial topics of the computer science field, and it’s related with the algorithms and statistical models which makes computers to perform at their highest along with given specific tasks without the explicit instructions. Those systems are learning from the providable data and makes the predictions out of it. There are lots of examples in this field such as the autonomous cars for example, and it continues to evolve.

On the other hand, the cloud development is what made me interested about the computer science in general. The cloud computing environments are responsible with the design, deployment, maintenance, and the development of the applications as the businesses transfer their local data and find their solutions in the cloud-based data. The demand for the cloud applications is at it’s highest, and the topics included in it is making me feel excited about it. There are plenty of technologies such as the Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform where developers can build their applications, deploy them and manage them easily from the cloud based platforms.

In my further journey in the computer science field, I would like to learn more about those topics. I am truly excited about improving myself on those fields to create innovative ideas for the technological industry.

Did you initially have doubts about your ability to complete the project? How do you feel now?

Our project is seamlessly an expesnive project, and it requires a lot of prior knowledge to Unity and working with the Virtual Reality (VR) Devices. Even this on it’s own is enough to made me think about how we could achieve our expected results for this project, or even if it’s going to be finished at the end of the spring term? To be honest, we are working very hard as a team, and trying to help each other as much as we can to achieve what we want with our project. It seemed very hard to reach to the end in the given time at first, but now when I look back to it, we progressed so far so that we can actually finish the project on time and make it an application to use. With each day learning new things about the implementations, I started to feel very comfortable with using the Unity and creating our program, so that it doesn’t feel like it couldn’t be end at the end of the spring term, and it’s most likely possible to achieve even more with our project. I am confident with my team that we can do whatever it takes possible to finish this project, and come up with a solid work!

What technology did I have difficulty learning, but now appreciate?

To be honest, working with Unity is brand new for me, and I am still in the learning phase. There is lots of things to learn, and like the other coding branches, it never stops. The most difficult thing to learn in Unity was the event manager. It is whole another process for creating and combining the aspects for your desired outcome. You are basically creating an event for an object or an item to be used in your project. I struggled with it a lot because I have never used such thing before in my life. Now, when I look at it, I actually feel like it is pretty useful for skipping some of the coding parts and integrate whatever you would like to! I never thought it would be that useful, because I was always preferring to code from C# rather than learning something new. I will definitely use the even manager tool more often, and hopefully we are going to create our desired elements for our project with the help of the tool.

Writing Clean Code

In the past, like when I was around 15-16 years old, It was the first time I genuinely started coding, and I choose to start coding with the C++ language. It was definitely a fresh new thing for me, and I had my first macbook at the day, but the learning curve and everything else was way too hard to learn at that point. Although, I was trying to improve each and every day to write better code, but when you look at it, you would see bunch of meaningless lines crambled and get into each other so that it was barely possible to read it. Now when I look back to those days, I could clearly tell the importance of writing “clean code”. In the Martin’s article, he states that if you ever looked at the mess you created that is so grave and took weeks to do it even though it should only took several hours (Martin, 2008, p.5). Even though in my college life, this happened to me more than several times, where the problem was on the surface, but because of the mess I created, it maybe took more than couple days to solve it. I wish I could share what I wrote back in the day, but unfortunately, I didn’t saved the projects that I tried back in the day from my old computer.

In the other hand, writing code over and over, again and again will definitely improve you, and how you write the code. This involves “getting rid of the code smells”. Like how Fowler states in his article, “If it stinks, change it” (Fowler, 2018, as cited in Grandma Beck, n.d., p.85).

The one thing from the articles that I stated which I want to do more often is to precisely try to do whatever it requires me to do for the code, such as code should be functioning well, and also if possible, try to avoid from the code smells, and write a cleaner code. I improved my coding style alot from the past, and I actually started writing clean code with no smells in certain situations, but It is obvious that grind never stops, and I have to improve myself even more with each and every part of writing code.

The one thing that I would like to avoid doing is that I often don’t add comment lines while I am writing the function, then when I skim through the function, I see that the code I wrote even could be a stranger to me. That is definitely something that I want to avoid, which I could avoid it with at least repeating through what it does while I am writing the part, and while repeating it out loud, I could quickly create a comment line, and add the things I spoke. This way, the code would be much more cleaner to me while I try to skim over it once again.

This is currently one of the example codes that I wrote for my portfolio project that is free of code smells, and aimed to be a clean code:

Link: https://www.youtube.com/watch?v=tV7vFc072s0&list=PLOuwshOnMJ07_49hP7zdRr2O6PY_Y0LOr&index=5

References:

Fowler, Martin. Refactoring: Improving the Design of Existing Code. 2nd edition, Addison-Wesley Professional, 2018.

Martin, Robert C. Clean Code: A Handbook of Agile Software Craftsmanship. 1st edition, Pearson, 2008.

CS461 Course Analysis / Feedback

Before taking my first capstone project course, I was not too sure about what to expect, and what was going to happen. To be honest, this is by far one of the most enjoyable classes that I have enrolled in the OSU. From the very beginning, the courses were just getting louder, more complicated, and stressful. I had struggles with the other courses along with my personal work, trying to get better at coding in a daily basis. But being a part of a valuable group, and cooperating together on a serious project, this was definitely something that was new to me. And I could effortlessly say that I enjoyed every single part of it, and would like to achieve more. For a long time, I was not doing any documentation, or a writing, especially with a group filled with knowing what they are doing. Our project, the scope of our project, and working hard to achieve the desired result from that is our main goal, and I believe that we are getting closer to it every single day. I hope that with the continuing of the class along with CS462 and CS463, we will be achieving more, and I am looking forward to it!

Life Hacks / Stress Management

To be honest, this is by far the hardest term for me. I have always been trying to handle the stress and overcome it with small but effective ways, such as making myself a coffee, or eating, walking, even just closing my eyes for a moment to clear my mind. Those were extremely helpful to me while I was trying to get my thoughts together, and have a clearer mind. This term, even those small things that made me happy, are no longer that efficient.

I have been struggling with my time management a lot recently. Due to the assignments, workloads, all of the aspects that are keeping me busy, I lost the perception of time and started to feel anxious even about the small things. Later I found out that what I was facing was “cognitive switch”. My mind was constantly redirecting from one subject to another. That is when I developed a process where I could clear my mind and even focus better to what I do. This method actually started helping me, and made me feel more confident about what I am currently doing at that time.

The method I am using is a way to trick my mind even though things are blurry and unclear, but still my mind actually believes the words I am saying, which is I tell myself this is easy, and I will be over with it in a short amount of time. Even though things could get complex, I keep saying this sentence to myself, so that somehow, it starts feeling like it’s easy, and I can hyper focus what I am doing at that time. With this way, I am barely getting stuck at what I do, and feels like my confidence is just improving. I believe this could be a trick for anyone wants to try a different method rather than the current ones in use. Hope this helps for anyone struggling with the same concepts!

My career and job hunt

I’ve been introduced to many different tech subjects during my time at Oregon State University, but Machine Learning truly caught my interest. How Machine Learning has been able to change industries, especially when it comes to how it may be used to improve cybersecurity, and separated into such topics as data analysis and algorithms is the main reason I would like to pursue ML in my future career. For Machine Learning, exploring the job market has been extremely exciting and difficult for me. Even though it’s competitive, I’ve found that networking and continuing education are the keys to opening doors in the area, which is large and offers opportunities in big tech companies, and startups.

What got you started with computers or software?

My father, who is an expert electrical engineer is the real reason for my interest in computers. He was particularly interested in circuits and electrical systems, but I was deeply influenced by his imaginative thinking and his approach to problem-solving. I remember the many hours we spent in his place of business when he would detail the complex operations of electrical parts. This is the main cause why I am interested in the digital logic that powers these systems. Eventually, I became more interested in the software that facilitated the physical components my father worked with. The ability to write code and develop programs was like unlocking a new method of electrical power. My choice to study computer science at Oregon State University was mostly influenced by this understanding, which relied in the lessons that I learned from my father.

Hey!

I am Umut Altındere. I’m currently studying Computer Science at Oregon State University, building on my MS in Robotics/ML. Always eager to learn and grow, I’ve dabbled in various languages and frameworks, from Python and C++ to React and Node JS. Fluent in both Turkish and English, I’m looking for opportunities to further enhance my skills and contribute positively to the tech world.