I’m Andrew, a Computer Science student and FOSS enthusiast.
For this little project I created a 2D puzzle solving program. The program uses breadth
first search (BFS) for graph traversal to find a path from the source to the destination
in the fewest moves possible. If a solution is found the program returns a tuple containing
the path (coordinates of each cell visited) and directions taken (Up, Down, Left, Right).
If there is no solution the program will return
None. A sample puzzle is included
and can be tested by running the file as a script.
When creating puzzles each cell in the puzzle is either empty or has a barrier. An empty cell is marked by ‘-’ (hyphen) and a barrier is marked by ‘#’. You must give two coordinates (a,b) and (x,y), which represent the start and end points.
Long time, no see! This is the first of three new projects from this summer that I’d like to introduce to you.
Compared to other APIs like RESTful APIs, gRPC offers several key benefits, including:
The API accepts remote procedure calls to fetch weather and gelocation data from OpenWeatherMap.org. The service acts as an intermediary between gRPC clients and the OpenWeather API.
The following features are currently available:
This is the second of the two projects I prepared for this spring. For this project I’ve focussed on implementing data structures in Python, namely hash maps and hash tables.
These two hash map implementations feature open addressing with quadratic probing and separate chaining to handle collisions. The hm_include module provides the underlying data structures, and two hash functions.
Both implementations use the included DynamicArray class for the underlying hash table, however hash_map_sc.py uses a singly linked list for each bucket while hash_map_oa.py uses a HashEntry object. Additionally, hash_map_sc.py includes a seperate function, find_mode(), that provides a mechanism for finding the value that occurs most frequently in the hash map and how many times it occurs with an O(n) time complexity. Finally, both implementations include some basic testing when run as a script.
While data structures might seem bit mundane I actually had a lot of fun with this one! I felt much more confident in this project than I have in the past as well. It’s really exciting to see the progress I’ve made since last fall and I can’t wait to share more in the future. Source Code
My first memorable experience with technology was at age five - Nintendo introduced me to Mario, Tetris, and Zelda. My love of games took hold immediately, and I’ve been hooked on technology ever since. Games, and the hardware necessary to play them, were always evolving so I became determined to build my own desktop computer in high school. Since then, I’ve built at least another dozen computers and a couple home servers to host my own privacy focussed cloud services. These experiences have led me to become a strong proponent of open source software, in part due to its transparency, quality, innovation, and diversity. I am currently a Computer Science student at Oregon State University, and in addition to hosting my own Gitea service I also host my open source projects at Codeberg.org. Make sure you check out the links in the contact section below if you’d like to know more!Education
Bachelor of Science – Computer Science
2021 – Current
Bachelor of Arts – Ethics, History, and Public Policy
2005 – 2009