Paul's Programming Projects

Project Showcase for Paul Russell

Project maintained by NewViewDev Hosted on GitHub Pages — Theme by mattgraham

Filter Creator

Last Edited: July 27th, 2021

Project Link


I started this project because I worked on image filtering in one of my classes. A lot of the actual work was done for us and we just needed to use higher-order functions to give the desired filter results. There were a few things about this that weren’t satisfying to me, though I did love the project as a whole. Still, I really wanted to learn how to manipulate the image from start to finish on my own, and also, I wanted a more generalized method for image manipulation instead of hard coding each individual filter. This is also one of my first experiences with HTML, WebGL, and CSS, and putting them together with javascript has been a really cool learning experience. In the future, I plan to learn how to use cookies to allow users to store “filter equations” for later use. Once this is all done and I add some usability improvements. I think it will be a cool tool to play around with and could also have some minor teaching applications, but overall, it’s a show of all that I’ve learned.

After Thoughts:

I’ve really enjoyed this project from an intellectual standpoint because it has started to show me how things go together and how much can be done from a simple browser application of just HTML, JS, CSS, and WebGL. I know there’s still a lot more to learn, especially on the server backend side, and I’m excited to do that in the future. I suppose it would also be really cool to one day try an implementation on a server that has allocated processing power and process them in a faster language on a more powerful machine. I might do that in the distant future if there was interest. Of all of the programming languages I used, I think WebGL was the most difficult to learn because of its parallel nature as well as all the boilerplate code needed to set up buffers and such. Once I got a hang of it, I realized that it was extremely well suited for my purposes and I can’t wait to see what I can create in the future.

To Do:

Things Learned: