#Software on the Shore
This is a GitHub repo for my personal blog, which I use to track interesting and new things I've learned while studying software development. It also contains the web applications and APIs I wish to showcase on my website's portfolio.
- Concepts and ideas from great programmers that I try to follow in my work.
Kent Back's Four Rules
- Run all the tests
- Contain no duplicate code
- Express all the ideas the author wants to express
- Minimize classes and methods
- Single Responsibility (SRP):
A class (component) should have one, and only one, reason to change.
- Open-Closed (OCP):
A system should be open for extension, but closed for modification.
- Liskov Substitution (LSP):
Derived types should be substitutable for their base types.
- Interface Segregation (ISP):
Abstractions should not depend upon details. Details should depend upon abstractions.
- Dependency Inversion (DIP):
Interfaces should be small, focused on a specific use case.
The DRY Principle
- Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
Dec.20 - 26, 2015
- Finished the majority of the back end and the front-end skeleton
- Modulated most data into JSON
- Transfered over previous apps to here
- Finished website structure
- Added old apps to the app page
- Deployed to Heroku
- Fixed DNS
Jan. 11 - 24, 2016
- Added Markdown-Previewer app to the apps section
- Added FCC Camper Leaderboard app, fixed About styling, and added footer.
- Added a couple of apps (recipe-box and game-of-life)
- Worked on optimizing page responsiveness
Jan. 25, 2016
- Finished changes to main site which make it more mobile friendly and responsive (have to work on individual apps)
Jan. 30, 2016
- Working on mobile responsiveness.
- Removed Local Weather app from apps due to Yahoo API change. Have to work on a new api.
Feb. 6, 2016
- Added a couple of web API projects to the router
- Added API projects to the apps page
Feb 8, 2016
- Adding a Redis database through Heroku
- Finishing and testing a custom function that adds simple analytics for visitors and saves to Redis
Feb. 10 - 14, 2016
- Decomposed server file structure
- Added Redis db model
- Finished functionality for URL Shortener Microservice and Image Search Abstraction API
- Changed sitewide color scheme to add some life. May be temporary.
Feb. 15, 2016
- Added new font to all branding
- Moved the blog to the sidebar menu
- Added a descriptive page to site home
Feb. 23, 2016
- Added shoreside dungeon crawler
- Cleaned up index.js Routing
- Fixed Redis connection error handling
Feb. 24 - Feb. 27, 2016
- Fixed various potential bugs in index.js (mostly type/error checking in APIs)
- Added Jasmine testing suite and specs (currently: apis, routes)
Feb. 28 - Mar. 6, 2016
- Added a data-visualization page to showcase D3 projects
- Added a D3 bar chart for US Gross Domestic Product over time
- Added a D3 scatter plot chart for Doping in Professional Cycling
- Added the remaining D3 data visualizations and styled the landing page
Mar. 7 - Mar. 8, 2016
- Transfered posts.json and future blog posts to a MongoDB database
- Refracted all Redis functionality to work with the database
Mar. 24 - Mar. 26, 2016
- Refractoring most front end scripts to use browserfiy and react
Mar. 1 - Mar. 12, 2017
- Updated sitewide styling for a more subtle feel. Removed Angular library.
- Updated responsiveness of styling.
- Removed APIs as the functionality wasn't desirable.