Conclusion

What did we learn?

Jump to Sass Jump to Spring Screenshot of generic code.

Sass

Did this framework perform to your expectations?

Yes, I worked with Sass before and I find it easy to understand and implement into the project.

Was it difficult to install or configure?

No, it was very simple as I used a VSCode extension to easily compile the SCSS files into CSS.

Was it easy to create pages with it?

Yes, it was straightforward.

Was the learning curve steep compared with regular HTML/CSS/JavaScript/PHP?

Not really, since it was basically CSS with some cool extra features.

Would you have done things differently in retrospect?

Yes. When designing the website, I should have taken into account the reusability of CSS rules and elements which could have improved my implementation of Sass into the website.

Do you regret your choice of framework?

No, I found it simple and sweet which gave me more time to put my creative energy into designing the pages over worrying over how to implement them.

Spring

Did this framework perform to your expectations?

Yes, I’ve worked with this framework a lot and know exactly what to expect from it. The development process was smooth as always but there was a lot of boilerplate code.

Was it difficult to install or configure?

It’s easy to install and configure a Spring boot application. You just need to go to start.spring.io and use a nice GUI. Spring uses a maven/gradle wrapper so you don’t need to install maven/gradle on your machine. The only required installation is the Java programming language.

Was it easy to create pages with it?

Using thymeleaf to create the dynamic pages was fairly straightforward. I needed to do some google searching for some aspects of it but in general, it was easy.

Was the learning curve steep compared with regular HTML/CSS/JavaScript/PHP?

The basics are fairly easy to learn but there are a lot of modules to learn if you want to use Spring to its fullest. I’d say that in general, Spring is easy to pick up, but hard to master. It’s harder to pick up than HTML, CSS, Javascript, and PHP but still not difficult in my opinion.

Would you have done things differently in retrospect?

Nope, I’ve built the project in a standard strategy/architecture I’ve been using that I know works and produces relatively clean code. Some minor improvements could be made to the security framework but for a basic project like this, it should suffice. I would also consider using Kotlin as the language since it can reduce the amount of coding time and I’ve just been using it with Spring for a while. I chose Java because it is a more popular language that others are more familiar with.

Did you regret your choice of framework?

No, because I’ve gotten fairly proficient with Spring so I knew I could build this project fairly well with it. It’s a pleasure to work with because of how powerful it is and the number of abstractions it gives you so you can write code that just looks like plain Java. The one issue I have with the framework is that it can take a large amount of code to create applications. If I was on a stricter deadline or in some kind of startup environment, it might not be the best choice time-wise.