Duck Portfolio - Home πŸ¦†

Be like a duck, paddling and working very hard inside the water, but what everyone sees is a smiling and calm face. ― Manoj Arora

Welcome to Brennan's Duck Portfolio!

Hello! 😊 Thank you for visiting my web portfolioβ€”it means a lot to me. I have built this website from scratch in the past three weeks, using several different technologies and frameworks. My initial commit to the project's repository was May 19th, and it was presented on June 8th.

For the front-end, I utilized the Bootstrap toolkit and jQuery framework in order to have the foundations of a solid, responsive mobile-first design. The rest of the JavaScript is vanilla.

For the back-end, I am using node.js with the Express framework on top, as well as Embedded JavaScript Templating as my template engine.

Additionally, I am using the NPM packages ESLint and Prettify for code analysis and pattern maintenance, the packages Mocha and Chai for testing, and the packages http-errors and body-parser for validation.

Finally, this website is currently being deployed on Heroku under a free Dyno plan, so I apologize for any issues regarding speed or connectivity!

Why This?

I decided to build my own web portfolio as the subject of this project to further my knowledge regarding back-end web technologies, while creating something that will be beneficial to my career. I hope that this demonstrative, visually-appealing website exemplifies my talents and character, as well as opens up opportunities to network with others.

Limitations: Through sheer luck, I managed to get my initial objectives set for this website completed on time, and in a presentable fashion. However, compared to the scope (and importance) of other group's projects, I feel like there is a lot currently lacking. In theory, an informational website such as this could be displayed completely statically, not requiring such a robust back-end.

If I had extended time, I would have added an actual database component (Eg. MySQL or Redis) instead of simple .JSON files, as well as look into adding an authentication/security page. I would have also liked to have been able to work on more ambitious front-end aspects as well, such as a Life In Weeks visualization, or add a pre-processor to my styles such as SASS or LESS.

Current Pages

Currently, there are three separate pages on this website to demonstrate different features and functionality within the scope of the described framework:

  • Docs: is an example of a static webpage and has the project's README instructions to download and deploy your own version of this open-sourced website.
  • Projects: is an example of a dynamic webpage that parses through a local .JSON file and pulls data to display in HTML.
  • Feedback: is also an example of a dynamic webpage, however it also allows the client/end-user to add to the local .JSON file, and has proper error-handling and validation of respective input fields.

More Information

This project is a collaboration between Duck Labs and EvolveU that aims to teach students the entirety of the spectrum of full-stack web development, starting with the visuals and UX of the front-end, and ending with the database and server communication of the back-end, with the result being a complete and functional website.

Specifically, this work is meant to exemplify the pedagogy of Project-based Learning. PBL is an instructional methodology that encourages students to learn and apply knowledge and skills through an engaging experience. PBL presents opportunities for deeper learning in-context and for the development of important skills tied to career readiness.


My Current Activities:

You can view previous endeavours I've completed on the Projects page. However, if you'd like to know what I'm currently up to, as in rightat-this-very-moment, then look here! Below is an update-to-date list of charts that are currently tracking what I'm up to. They are powered by Beeminder, and pull data from a variety of sources. I utilize these trackers as a means to hold myself accountable and act with a healthy amount of producitivty. For more information, see my side project, where I go into more depth.

Writing

Automatic Input via Draft.

✍️ Tracking my daily word count to encourage ideation and consistent work.

Blogging

Automatic Input via IFTTT and Medium.

πŸ“ Tracking posts I publish per month to encourage me to write publicly more often.

Productivity

Automatic Input via RescueTime.

βœ… Tracking productive time I've accomplished per day to encourage me to do what's important.

Poetry

Automatic Input via IFTTT and Tumblr.

πŸ–Š Tracking the amount of poetry I upload to encourage creativity and to post more often.

French

Automatic Input via Duolingo.

πŸ‡«πŸ‡· Tracking XP I gain on Duolingo as a way to encourage my language learning in French.

GitHub Commits

Automatic Input via GitHub.

πŸ’» Tracking commits I push to Github to encourage me to publicly code on projects more often.

Fitness

Automatic Input via FitBit.

πŸƒ Tracking the steps I take per day in order to improve my overall fitness outside and health.

Gratitude

Manual Input

πŸ™ Tracking things that I'm grateful on a daily basis for an increase to my overall happiness.

Sleep

Automatic Input via FitBit.

😴 Tracking the amount of hours I sleep per night, in order to improve my overall sleep hygiene.