More refactoring + MD switch
+ Switched to Markdown + Removed RST module and tests + Converted RST pages to MD + Updated a few pages + Clippy + Fmt
This commit is contained in:
@@ -1,24 +1,22 @@
|
||||
Joey Hines - joey@ahines.net - Westminster, CO
|
||||
==============================================
|
||||
# Joey Hines - joey@ahines.net - Westminster, CO
|
||||
|
||||
Education
|
||||
---------
|
||||
## Education
|
||||
* Masters of Science in Electrical and Computer Engineering
|
||||
* Auburn University, Auburn, AL. GPA: 3.9. May 2021
|
||||
* Bachelors of Science in Computer Engineering
|
||||
* The University of Texas at Dallas, Richardson, TX. GPA: 3.59. May 2019
|
||||
|
||||
Technical Skills
|
||||
----------------
|
||||
## Technical Skills
|
||||
* Programing Languages: C, Python, Rust, Java
|
||||
* Operating Systems: Linux, Windows
|
||||
* Version Control: Git, SVN
|
||||
|
||||
Work Experience
|
||||
---------------
|
||||
## Work Experience
|
||||
Blue Canyon Technologies - Flight Software Engineer - May 2021 to Present
|
||||
* Developed flight software for small satellite missions
|
||||
* Developed flight software for multiple small satellite missions across the BCT product line range
|
||||
* Collaborated with mission operations to improve ground station capabilities
|
||||
* Improved test infrastructure and scripting
|
||||
* Supported the summer internship program as a mentor
|
||||
|
||||
Auburn University - Graduate Research and Teaching Assistant - August 2019 to May 2021
|
||||
* Command and Data Handling (CDHS) team lead for a cube satellite project
|
||||
@@ -0,0 +1,21 @@
|
||||
# Motion Detector
|
||||
A project made for Auburn ELEC 7450: Digtal Image Processing. The source code can be found on my
|
||||
[GitHub](https://github.com/joeyahines/motion_detector)
|
||||
|
||||
## Goal
|
||||
The goal of this project was to detect motion on a video stream from a [VideoForLinux](https://en.wikipedia.org/wiki/Video4Linux) source.
|
||||
The algorithm can also be tested by loading in individual frames.
|
||||
|
||||
## Implementation
|
||||
The project was written in C and VideoForLinux for grabbing image data and [SDL](https://www.libsdl.org/)
|
||||
for rendering the video output. A background model is built by implementing a moving average of the image.
|
||||
In addition to this, a motion mask is implemented to desensitise the algorithm from background motion objects.
|
||||
|
||||
Webcam output w/ motion highlighted:
|
||||
|
||||

|
||||
|
||||
Motion detection layer:
|
||||
|
||||

|
||||
|
||||
@@ -1,5 +1,34 @@
|
||||
This Website
|
||||
============
|
||||
# This Website (V3)
|
||||
|
||||
This is the 3rd iteration of this website. The 1st iteration was a simple HTML page built with bootstrap
|
||||
that looked similar to the current design. The 2nd iteration moved to Rust and the Rocket framework and
|
||||
was more dynamic allowing for RST pages to be rendered to html. This latest iteration uses Axum and Markdown
|
||||
rendered to HTML for the dynamic content.
|
||||
|
||||
## Moving away from Rocket
|
||||
Rocket is a great framework and will probably be the Rust goto. However, it is very complex and comes
|
||||
with a lot of bells and whistles I don't need. Its also in active development which meant it became very
|
||||
hard to update the site. Everytime I wanted to add a new feature I would go to update Rocket and have something
|
||||
break.
|
||||
|
||||
I originally tried Warp, which I have used for some other projects. While I like it mostly, I find it very
|
||||
hard to move past the basic examples. And when you run into issues with it, the compiler loves to spit out
|
||||
very esoteric errors that are a pain to debug.
|
||||
|
||||
I'm also a low level developer. I like working at lower levels of interfaces. Axum is pretty high level
|
||||
in the grand scheme of things, but it doesn't seem overly opinionated in its design. Axum has its own issues
|
||||
and I doubt this will be the last time I switch the framework...
|
||||
|
||||
## Moving away from RST
|
||||
I lied, in the last updated for this site I said how much I loved RST. After using more Markdown for note-taking
|
||||
and for some documentation, I realized I like it more. I always decided to not write my own parse for it.
|
||||
Rust has some good libraries that render MD to HTML.
|
||||
|
||||
# This Website (V2)
|
||||
> NOTE: This is the old version of this page for the second version of this site. It's here for archival purposes.
|
||||
This was originally written in RST and has been converted to MD for v3.
|
||||
|
||||
## This Website
|
||||
This is the 2nd version of my personal website, the first version was very similar to this but written in plain HTML
|
||||
using Bootstrap. I was never very happy with how it looked and it being raw HTML limited what I could do with it. To
|
||||
improve it, I set out with a few goals:
|
||||
@@ -10,19 +39,15 @@ improve it, I set out with a few goals:
|
||||
* Improve aesthetics
|
||||
* Ensure mobile version also looks good
|
||||
|
||||
Picking Rust and Rocket
|
||||
-----------------------
|
||||
As I am not much of a UI person, the website update was put on the back burner for sometime. The old site was "good
|
||||
### Picking Rust and Rocket
|
||||
As I am not much of a UI person, the website update was put on the back burner for sometime. The old site was "good
|
||||
enough." I originally considered doing it in Python and using Django. But that fails the criteria of being easily
|
||||
deployable. In early 2020, I began learning Rust out of curiosity and the need to use it for research.
|
||||
I decided to tackle the website backend in Rust as a learning exercise. I went with the `Rocket`_ framework. It
|
||||
deployable. In early 2020, I began learning Rust out of curiosity and the need to use it for research.
|
||||
I decided to tackle the website backend in Rust as a learning exercise. I went with the Rocket framework. It
|
||||
seemed to suit my needs and supported Tera templates. Tera templates are very similar to Django's templates that I
|
||||
had already had experience in.
|
||||
|
||||
.. _Rocket: https://rocket.rs/
|
||||
|
||||
Easily Editable
|
||||
---------------
|
||||
### Easily Editable
|
||||
As the style of the site is a simplistic linux terminal, I decided it would be nice to have the longer pages be in
|
||||
raw reStructuredText. This fits the aesthetic of the site well and unlike HTML files, they are raw text and are easy to
|
||||
write and read while editing them. RST files can also easily be built into PDFs, which is great for generating a resume.
|
||||
@@ -32,8 +57,7 @@ the Rust backend looks for all pages and lists them. To control ordering, I impl
|
||||
character of a file name is its rank. For example, my resume is in a file called 1resume.rst. This gives it rank of
|
||||
1 so it shows up on the main page before other links.
|
||||
|
||||
Improving Aesthetics
|
||||
--------------------
|
||||
### Improving Aesthetics
|
||||
Like stated earlier, I am no UI designer. The terminal style meant I could put very little effort into the design of the
|
||||
actual website. Somehow in version one, I still managed to mess that up. This was mainly due to hacking together
|
||||
bootstrap to give me something that looked like a terminal. This time, I dumped Bootstrap and wrote my own CSS. I should
|
||||
@@ -1,33 +0,0 @@
|
||||
Motion Detector
|
||||
===============
|
||||
A project made for Auburn ELEC 7450: Digtal Image Processing. The source code can be found on my `Github`_
|
||||
|
||||
.. _GitHub: https://github.com/joeyahines/motion_detector
|
||||
|
||||
Goal
|
||||
++++
|
||||
The goal of this project was to detect motion on a video stream from a `VideoForLinux`_ source. The algorithm
|
||||
can also be tested by loading in individual frames.
|
||||
|
||||
.. _VideoForLinux: https://en.wikipedia.org/wiki/Video4Linux
|
||||
|
||||
Implementation
|
||||
++++++++++++++
|
||||
The project was written in C and VideoForLinux for grabbing image data and `SDL`_ for rendering the video
|
||||
output. A background model is built by implementing a moving average of the image. In addition to this,
|
||||
a motion mask is implemented to desensitise the algorithm from background motion objects.
|
||||
|
||||
.. _SDL: https://www.libsdl.org/
|
||||
|
||||
Webcam output w/ motion highlighted:
|
||||
|
||||
.. image:: https://github.com/joeyahines/motion_detector/blob/master/docs/final_report/motion.png?&raw=true
|
||||
:width: 60%
|
||||
:height: auto
|
||||
|
||||
Motion detection layer:
|
||||
|
||||
.. image:: https://github.com/joeyahines/motion_detector/blob/master/docs/final_report/motion_image.png?raw=true
|
||||
:width: 60%
|
||||
:height: auto
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@
|
||||
}
|
||||
|
||||
.text {
|
||||
font-family: "Ubuntu Mono", monospace;
|
||||
font-family: "Hack", monospace;
|
||||
color: whitesmoke;
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
}
|
||||
|
||||
.heading {
|
||||
font-family: "Ubuntu Mono", monospace;
|
||||
font-family: "Hack", monospace;
|
||||
color: limegreen;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user