Git Product home page Git Product logo

nautical's Introduction

๐Ÿ‘‹ Hello! I'm Brent

I am a senior software engineer at RedHat. I support the Openshift-Installer and Openshift-Ansible projects with an emphasis on AWS and GCP platform development.


I previously worked as a software architect and engineer for a startup called Spatial Integrated Systems. I spent my time designing, creating, and leading autonomous surface vessels. I have experience with small and large vessels ranging from 5 feet to 200+ feet.


I also have experiene working for the government as a software engineer with a focus on communication systems operating during wartime efforts with a MTTB less than 0.05%.


Checkout my github portfolio for more information!

๐Ÿ“š Tech Stack




๐Ÿ”ญ What am I currently working on ?

RedHat

Top Langs

nautical's People

Contributors

barbacbd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

nautical's Issues

GO: units

Implement the .../units module in go

Move to scrapy

Move to a more modern/faster web crawler. Scrapy looks to be the way to go here. Beautiful soup worked well for a bit, but the results appear to be inconsistent. Find more information on scrapy.

version control

Add a new file in nautical for release information

__version __ = ...
__author __ = ...

These can then be used as attributes in setup.cfg like
version = attr: nautical.release.version

Include doc strings in release about nautical

Deprecate NCEI

NCEI should and will be moved into its own library. Deprecate the module in this project.

Provide Tide information

There are several sources of tide information online. Provide this information based on latitude and longitude values and time.

Docs for CI

Document how/when CI tests are run for all instances of the project.

Static Code analysis

Run a static code analyzer over the code base and fix any errors/warnings. The same SCA tool should be added to the CI Tests on build. Add a badge to the README to get the SCA output.

NCEI Mock Tests

Utilize mocking in python to create mocks for unit tests involving the NCEI module.We should make no external calls during unit tests.

use haversine module

Remove the haversine functions from the location/util.py. We can use the haversine module.

GO: CI Tests

Currently, CI tests when file changes occur in a certain directory. New tests need to be added for GO. These should only be run when the pkg has changed.

  • Open a new request to document how/when CI is run.

GO: io

Implement the .../io module in go

Update in geometry

Update This function to provide the users with the ability to determine if their point lies within a complex or simple geometry. Accept a set of ordered points in the clockwise direction. If there are just two points, create a bounding box using the min, min to max, max (essentially creating a square) and check that way. Less than 2 points returns False.

Create the unit tests to test this functionality.

Remove NCEI

After #2 is completed, a new release and version bump should occur. Then remove the module.

GO: Cache

Implement the .../cache module in go

New scripts

Add in golint and gotest scripts to the /scripts directory.

GO: log

Implement the .../log module in go.

Add in range to point class

Add the in range function here to the point class. Keep the static functions, just call the function of P1.

Add in unit tests

Pages action

On release add an action to automatically generate the documentation and push it up where github can host it.

deprecate NCEI

This should really be pushed to its own project. Deprecate this software so that can be used in another project. The deprecation will prepare for the deletion.

NCEI token read from file

Read in a yaml file in the same format as the template file in the project. See ncei/token.yaml for more information. The function should accept a single parameter, the path to the file. The parameter will default to the default yaml file. If the default is used, log a warning. The file should be a yaml file with a single line: token: {{ TOKEN }}

Web Mock Tests

Utilize mocking for unit tests with the web module. We should be making no external calls when creating tests.

delete NCEI

This requires #50 to be merged and a new version to be created

Use CDATA for buoys

Currently the buoy description is taken from the KML page. Parse the description (it is CDATA) and add this to the Buoy object.

Nautical Cache

Add a system cache that enables the user to save look up time if enough time has not passed.

The cache should also allow the user to provide the original objects and set the past data.

Documentation Examples

Add examples for using the IO module (add how to utilize the buoy objects) as well as the NCEI module.

These docs should reside in /users/docs.

The NCEI docs will contain the NCEI examples.
The other examples can be added to a new file called Nautical.md

GO Docs

New user docs need to be generated for all GO packing.

GO: Time

Implement the .../time module in Go.

lxml Incorrect interpretation

In nautical/io/sources the pm.name field is interpreted incorrectly when the name can be an integer. The leading zeros are dropped. As of right now there is a hack fix where an int field will be zformatted with 5 0's. We need to try to interpret this data as a string no matter what.

Redesign tests

Should I look into redesigning tests so that they are a part of the package.

  • Exclude them in the manifest and any setup information
  • Pytest would be run from home
  • Consideration: Go tests are a part of the main source.

Remove area converter

Wait for this issue to be resolved. Make sure that the issue is in a release then remove the function completely.

Add tests for `Parameters` in NCEI

There are currently no test for parameters in the NCEI tests.

  1. List of valid params
  2. Single Param
  3. Single Param - not correct type -> Raises AttributeError
  4. List of Params where one is a bad type -> Raises AttributeError

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.