Hi there! 👋 I'm Sam Maus!

I'm a software engineer

Thank you for visiting my page!

about me

Sam Maus Minecraft

Hi! I'm a software engineer. I enjoy playing sports(especially baseball), video games(especially Overwatch), and tinkering with Raspberry Pi projects.

I grew up in Minnesota! I earned a Bachelor's degree from St. Olaf College, a Master's degree from Minnesota State University-Mankato, and recently graduated from the full-stack developement program at Prime Digital Academy. Click on the 'resume' tab in the top right to view my full resume!

Here are some technologies I've worked with:
  • JavaScript
  • React
  • Node.js
  • PostgreSQL
  • C++
  • Python

my projects

(click on project to view more information)

FRIENDLY WAGER

github

live

'Friendly Wager' is a sports betting and social networking mobile application that allows users to create and accept bets on NFL games between with their friends. There are two types of bets that a user can make or accept from their friends - 1) the over/under and 2) the spread. This application uses two different APIs to automatically display the games for the current NFL week, the betting odds, and calculate the winner of these bets.

This application differs from traditional sports betting in that it pits two 'friends' against each other. In other words, once a user places a bet on an NFL game, the bet is not technically 'placed' yet. The user needs one of their friends to accept the other side of the bet. For example, if a game has an over/under of 50 points and the user bets the under, they then need a friend to accept the over; the other side of the bet. Once a bet has two friends involved, it is officially active. If a bet is never accepted by a friend, the bet is erased once the NFL game starts. Users are only allowed to accept bets created by their friends.

Built With:

  • React
  • Node.js
  • Express
  • PostgreSQL
  • Material UI
  • Moment.js
  • Node-cron
  • NFL & the Odds API's

START OVERWATCH

github

'Start Overwatch' is an application aimed at beginner Overwatch players. 'Start Overwatch' has detailed descriptions and outlines of all the heroes and map in the game of Overwatch. It is meant to help new players better understand the complex interactions that happen in the game, and thus improve their gameplay.

After creating an account, users can either view heroes, maps, or team compositions. The heroes tab will bring the user to a page displaying all the heroes in Overwatch. Each hero can be selected to view a more in-depth description. The map tab will do the same thing for the user, except obviously displaying all of the maps in the game instead. The team composition tab allows the user to create a team composition, based on 2-2-2 role rules. All team compositions, heroes, and maps can be saved/favorited for easy access at a later date.

Built With:

  • React
  • Node.js
  • Express
  • PostgreSQL
  • Passport.js
  • Material UI

ROUTE PLANNER

github

Route Planner is an application made with C++ using the Open Street Map open-source project. The application using the A* Search Algorithm to search through a destinated map area to find a route between the user's starting and ending nodes. The application will prompt the user/programmer to input a starting and ending node once the application is ran. Nodes are via x and y coordinates in this application starting with (0, 0) as the bottom right of the map and (100, 100) being the top left. X and Y coordinates must be between 0 and 100.

Route Planner will ignore man-made and natural obstacles, such as a building or river. This application is built using cmake and displayed using the IO2D graphics engine. Check the repo for instructions getting them installed. I suggest running this application on a Linux machine (or a Linux virutal environment) as getting all the dependencies (cmake, make, gcc/g++, & IO2D) can be challenging on Mac and especially challenging on Windows.

Built With:

  • C++
  • CMake
  • Make
  • g++/gcc
  • IO2D
  • OSM project

MOVIE GALLERY

github

The Movie Gallery application lets users keep track of their favorite movies. To add a favorite movie, simply select the '+' icon at the top. The user will be brought to a form that allows them to input the movie title, image path/url, description, and genre. Add the movie to the database and it will now appear on the home page.

To view more information about a movie, click the 'i'(information) icon below the movie. The user will be redirected to that movie's page where the movie information will be displayed.

Built With:

  • React
  • Node.js
  • Express
  • PostgreSQL
  • Material UI

PONG

github

This is a simple pong game created using the Lua scripting and LOVE 2D game framework. The game will keep track of the scores of the players and declare a winner after one player reaches a score of 10. The game has two modes, 'play' and 'practice'. At launch, press 1 for 'Play' mode or 2 for 'Practice' mode.

In play mode, which is user vs. user, user 1 controls the right paddle using the 'W' & 'S' keys to move and down, respectively. User 2 controls the left paddle using the 'Up' & 'Down' arrows keys. In practice mode, which is user vs. computer, the user controls the right paddle using either the 'W' & 'S' or 'Up' & 'Down' keys. The left paddle is controls by the computer. In both game modes, a point is scored by getting the ball past your opponent's paddle and into their "goal". First to score 10 points win in both modes.

Built With:

  • Lua
  • LOVE2D

C++ CALCULATOR

github

This calculator was developed using C++ and built using CMake and Make as my capstone project for the C++ Developer Nanodegree program on Udacity. This application incorporates C++ features such as memory management and concurrency. The graphical user interface for the calculator was developed using the wxWidgets library. The calculator has two modes, 'Standard' or 'Scientific'. The standard mode will ignore operator precedence and perform calculations from left to right. The scientific mode will adhere to operator precedence by converting the user entered infix equation to a postfix equation and then solving. Users can force operator precedence by using the included parentheses. By default, the calculator is in standard mode. To switch the mode, go to the file menu and under the 'type' submenu there is an option to select the preferred mode.

Built With:

  • C++
  • CMake
  • Make
  • wxWidgets