Feedback for first Rust Program

https://sh.itjust.works/post/57050433

@Yeahboy92 - sh.itjust.works

Lemmy

@such0299 My suggestions:
- For any file location/paths use `PathBuf` & `&Path` as reference - you'd tank me in couple years working on bigger project
- I'm not fan of `Result<_, dyn Error>`, I prefer own error enum with `From<>` for third party error types (`thiserror` crate handles that for us); that way we don't allocate memory just to handle errors.
- Then you `panic!()` in functions that have `Result<>` return type; follow the above and use own error kinds.

1/2

@such0299
- To deal with URLs it's better to use `url` crate (strong validity checks).
- You overuse `error!()`, just bad practice; log entries are usually kept succinct.
- Design wise, if you'd make `Vec<VendorOuiData>` your central object, your `main()` would thank you for clarity (ask question if you want to learn more).