Categories
Uncategorized

Blog Post #3

The AgBizLogic project for my functional area to work with latitude and longitude coordinates has been mostly straightforward thanks to the guidance from the project sponsor and the team. A challenge I recently encountered was handling edge cases. Stack Overflow is an amazing resource and developers on there has a wealth on knowledge. I found help there from old forums. However, the most difficult part of the project has just been getting prerequisites and environment setups. For instance, for some reason, I am not sure how to use an ESRI API on my local machine.

I chose this particular project to get practice with working with data. I have been working with geospatial Shapefile data. It has been interesting to work on transforming the data into latitude and longitude from geometry points.

I am now on a shared GitHub repo with another teammate, so our functional areas are integrated with each other’s.

The main users of the project will be users of the AgBizLogic Environment Suite, where they can create scenarios. These users will most likely be farmers.

Categories
Uncategorized

Blog Post #2

The technology I’ve been learning to use and getting practice using include the following libraries: GeoPandas (Python), Shapely, JSON and Path. In addition, on the front-end, I will likely be referencing the docs for JavaScript and HTML.

The most new to me and my favorite technologies to learn have been GeoPandas and Shapely. GeoPandas has made working with geospatial data in Python easier. They have built-in functions that allow me to do required calculations on the shape data. Speaking of shape data, the Shapely library helps me analyze the geometric objects of the agricultural fields.

The JSON and Path libraries are fundamental in the backend of my program, because I pull the data I need from a JSON file, and use the Path library to specify the location of the file.

Categories
Uncategorized

Clean Code

‘Clean code’ written by Robert C. Martin is the standard book to learn how to write clean code and avoid code smells. Having not purchased the book, I read a summary on GitHub [1]. I came across a design rule that said, “prefer polymorphism to if/else or switch/case.” To be honest, I have the habit of using if/else and switch/cases, and it is my go-to method, so I decided to research this more.

I found a website called refactoring.guru [2], which seems to be a helpful resource in this area. The website has options to view the code before and after, with a problem or solution. I chose to view it in Python. The article describes how a conditional, with various actions depending on the object type, can be refactored with the creation of subclasses to match the conditional branches. The benefits of using polymorphism is to conform to the “Tell-Don’t-Ask” principle, remove duplicate code, and easier maintenance.

[1] https://gist.github.com/wojteklu/73c6914cc446146b8b533c0988cf8d29
[2] https://refactoring.guru/replace-conditional-with-polymorphism

Categories
Uncategorized

Blog Post #3

I have a general idea of how to go about the project, but I don’t know the gritty details. I need to ask more questions, develop further, and do more testing. I figured out how to clone the repository from Github, but I still can’t run pip install -r requirements.txt. I tried the GeoPandas Python library to use for the geographic information.

The course has been good. The instructor has been flexible with due dates, which has been helpful in the chaos of life. My teammates have made the experience good as well, by being reliable and taking leadership roles.

Categories
Uncategorized

Capstone Project

During these initial stages of the project, it has been a positive learning environment with a group of students. There have been struggles with getting the proper development setup, but sometimes an earlier version of Python is required for some applications. The codebase has an incompatibility issue with the newest versions of Python, and may be slightly outdated. I hope this is an easy fix.

The capstone project course has been good. I’m glad there is a loose structure to keep the students engaged, but without having too rigid of requirements.

Categories
Uncategorized

Hello world!

Hello world! I’m Lucinda, and this is my outlet for sharing my progress on my software engineering senior capstone project. I’m a student at Oregon State University, local to the Pacific Northwest in Coeur d’Alene, Idaho. I got into computer science after being inundated with ads for learning how to code that piqued my interest and also in the midst of the Covid-19 pandemic, and selecting a major that can be done remotely. My favorite programming language is Python, because of its versatility and ease of use. I’m interested in the pharmacology flashcard software project.

My husband and I are pet parents to a beautiful, mitted and booted, gray Ragdoll cat. My interests outside of computer science include health, medicine, theology, and esthetics (skincare specialty). My favorite TV shows include Bob’s Burgers and the Great British Baking Show.