With the exponential pace of technological advancement, businesses strive to get the best out of it and to ensure their ...
Web technologies study: Our software frameworks preferences
If you know a little thing about us, our work is all about getting things done efficiently. We have been through many projects now, which means we have applied many technologies too. After our fair experience in the tech world working on development, we can present our thoughts on the current situation in the web technologies market and why we use them.
What are web technologies?
The big battle among software frameworks
Our favourite front-end picks
So, we’re on board. We’re here for those sleek frameworks helping us build fast, engaging, bulletproof web apps. On a daily basis, we use React and Angular (newest versions) as our main technologies on the front end. We support them with other languages and frameworks, but we believe that the app’s base should be as stable as possible (meaning proven efficiency and generous support).
What about the back-end?
Let’s talk about the back-end. Here, we go with either the most popular JS solution (Node.js with Express) or Ruby, and Ruby on Rails in specifics. It depends on which one we choose for the project, but we like them both and treat them equally. What’s important to us is, once again, efficiency, stability, scalability, and a great, great community. This is what makes the app and its tech rock solid. We don’t do Java and PHP. We may be wrong since we don’t build the teams around those technologies by choice, but we don’t like them. They seem less updated, sluggish, and the community around them is slowly dying (but this particular one is more true for Java).
There are still some situations in which we have to do something in either Java or PHP (as when e.g., the project has to be implemented in some old corporate system), and it’s not as smooth as we’d like. Our advice here is to do what we do: use it when you have to, but don’t let it be your first choice or the base for the application. It’s simply not worth it.
It’s a slightly different story with Python as there are no technologies that could replace it with heavy data analysis and machine learning. But it’s a particular need and doesn’t apply to a typical web application. We’re looking into the topic, and we’ll definitely implement Python to our technology stack when such projects come.
Things to keep in mind to choose the right technology stack
Listen to developers
What’s important about choosing the stack for the project (and it’s easy to forget about it) is what developers think. Being skilled in a language is one thing, but being excited about it a completely different topic. A happy developer is a good developer. They’re the core of almost every tech company out there, and we shouldn’t force them to work in an environment that is so-so for them. They won’t be awesome and, therefore, our product will suffer.
Keep things (and code) nice and tidy
When it comes to practices, we always choose to separate the front-end and the back-end. Separate code, separate repository. These two groups need to focus on different things: UX, design, attention to visual details on the front, and more of a performance and architecture on the back. That’s why we don’t want to bother one group with the challenges of another.
You won’t find Ruby bits in our front-end code, and you won’t find our backenders worrying about CSS. Our whole back-end is simply an API. It communicates flawlessly with the front, but it’s not an integral part of it. Frontenders won’t be concerned about server problems and builds, and they could stay focused on their part of the work. Again, we are on for efficiency.
Our web technologies list
So, after all those trade-offs and data, we can conclude that: we build in React, Angular on the front end, and Node.js, Ruby on Rails on the back end, in various combinations. Sometimes we use other languages to support the project, but we hardly ever base the app on different technologies. We believe this is the right choice as we believe in data, developers’ satisfaction, stability, fast-paced development, results, and community. Still, we also love to follow the trends and be a part of the group improving the web.
We’re open to questions about the future of web technologies and our choosing. Let us know if you’d like to learn more about any particular software framework or its usage in specific situations. Do you agree with our way of building, or do you prefer doing it otherwise? We’d be happy to hear from you. Drop us a line: firstname.lastname@example.org.
You may also like...
There’s little doubt that in an ever-changing startup environment, timing matters. Especially during the post-MVP ...