Skip to main content
203 votes

Fear of web-app not being "future-proof"

Perfect is the enemy of good. Or put another way, don't worry about it today. If your app does what it needs to do, then it's fine. It's not a bad thing to rewrite parts of software further down the ...
Philip Kendall's user avatar
189 votes

Can we assume while testing software that a user wouldn't perform such silly actions on software?

You might not enter random values into fields of a web application, but there certainly people out there that do just that. Some people enter random by accident and others do it intentionally trying ...
Bart van Ingen Schenau's user avatar
112 votes

Fear of web-app not being "future-proof"

Any thoughts on how I can overcome this mental block, and to ensure my app will be scalable? The crux of the issue isn't scalability. The crux of the issue is thinking that you will get it right the ...
Flater's user avatar
  • 52.5k
105 votes
Accepted

How to keep applications stateless

"web applications should be stateless" should be understood as "web applications should be stateless unless there is a very good reason to have state". A "shopping cart" is a stateful feature by ...
Philipp's user avatar
  • 23.4k
101 votes

Can we assume while testing software that a user wouldn't perform such silly actions on software?

Never Assume Anything You cannot assume that any user will not do something "dumb" with your software by accident or on-purpose. Users can accidentally press the wrong button, the cat can ...
Ben Cottrell's user avatar
  • 11.9k
72 votes

How and why did modern web application frameworks evolve to decouple URL routes from the file system?

In its most basic form, a website serves static files. Mapping the URL path to a file path is the most obvious choice; essentially, it's a read-only FTP site. Then people wanted to change the content ...
Ewan's user avatar
  • 77k
68 votes

How to keep applications stateless

It's true that web applications should be stateless. However, session variables, cookies, and tokens don't violate this when they are all stored on the client (web browser). They can be parameters in ...
candied_orange's user avatar
68 votes
Accepted

Is it common practice to validate responses from 3rd party APIs?

Absolutely. For starters, you never know that somebody hasn't hacked into your connection and the reply you receive doesn't come from the API at all. And some time in the last two weeks I think ...
gnasher729's user avatar
  • 45.9k
60 votes

Can we assume while testing software that a user wouldn't perform such silly actions on software?

There are several factors to take in account. To illustrate those points, I'll use an example of a field where a user should enter a percentage in a context of a quota defined for a specific task in ...
Arseni Mourzenko's user avatar
54 votes

Why is XSLT so rarely used on the web?

XSLT does not really have a useful role in the modern interactive web. The purpose of XSLT is to transform from one XML language into another - but you actually never need to do that in the first ...
JacquesB's user avatar
  • 59.8k
43 votes

Is it common practice to validate responses from 3rd party APIs?

Somebody else's API is your external interface. You shouldn't blindly trust anything that crosses that boundary. Your future debuggers will thank you for not propagating the other system's errors ...
Ross Patterson's user avatar
40 votes

Why is REST commonly used instead of RPC-like mechanisms in web applications?

REST was designed for the web, and the web was designed for REST. The two just fit will together. Roy Fielding's 2000 PhD thesis Architectural Styles and the Design of Network-based Software ...
Jörg W Mittag's user avatar
40 votes

How and why did modern web application frameworks evolve to decouple URL routes from the file system?

You can look to a white paper by Roy Fielding on REpresentational State Transfer (REST) as to the when and the why. The first framework I was aware of that made the distinction between a resource and ...
Berin Loritsch's user avatar
37 votes
Accepted

How can I prevent a user from editing my code in their browser?

You literally cannot prevent users from accessing and modifying content that you are sending them. You have no control over the browser, or which browser they use, or whether they are in fact ...
amon's user avatar
  • 135k
33 votes

How to keep applications stateless

web applications should be stateless Nonsense. Web requests should be stateless. Or more accurately, web requests are stateless. But, saying that a whole application should be stateless is complete ...
svidgen's user avatar
  • 14.7k
27 votes
Accepted

How does a company like Amazon avoid bottlenecks accessing the database layer?

However, if multiple users are being served by separate servers and both try to add the same item to their cart, for which there is only one remaining, there must be some "source of truth" for the ...
Michael Borgwardt's user avatar
25 votes
Accepted

Whats the difference between staging and UAT environments?

The difference is the data. A UAT environment is set up for "user acceptance" of new functionality. In order to test that functionality, QA or stakeholders may set up user profiles a particular way ...
John Wu's user avatar
  • 26.6k
23 votes

How can I prevent a user from editing my code in their browser?

You can't. One of the fundamental rules of computing: you can't trust the client. Whatever clever scheme you think of, I can get round it if I am in control of the client.
Philip Kendall's user avatar
20 votes

How and why did modern web application frameworks evolve to decouple URL routes from the file system?

I don't think it's an artefact of modern web application frameworks, it's mostly an artefact of dynamic page serving in general. In the old days there were mostly static web pages, where a software ...
Bergi's user avatar
  • 1,333
20 votes

Why is XSLT so rarely used on the web?

Depends what you mean by "in Web". XSLT is very widely used. As far as we can judge from metrics like the number of StackOverflow questions, it is in the top 30 programming languages, which probably ...
Michael Kay's user avatar
  • 3,529
19 votes
Accepted

Structure of RESTful Service with Java Spring for Beginner

Here is one of my favorite kick-off examples of structure for your spring rest app. 1. Separation of layers, each layer is an individual module/project REST API Packaged as war (Could be jar if ...
Alex Minjun Yu's user avatar
18 votes

Fear of web-app not being "future-proof"

Despite the enormous amount of money Facebook and Google have poured into marketing to convince you otherwise, front end frameworks exist for two primary reasons: First, offloading hardware/network ...
Iron Gremlin's user avatar
  • 1,115
17 votes

Why do people do REST API's instead of DBAL's?

Warning: big post, some opinions, vague 'do what works best for you' conclusion Generally, this is done as a means of implementing 'hexagonal architecture' around your database. You can have web ...
Dogs's user avatar
  • 1,176
17 votes
Accepted

Why does Facebook obfuscate the names of CSS classes?

It's called minification. It makes the CSS files (and potentially Javascript files too) smaller, requiring less bandwidth to download. This can make a significant difference in performance, ...
John Wu's user avatar
  • 26.6k
17 votes

Is it common practice to validate responses from 3rd party APIs?

Is your API-boundary also a trust-boundary? As you are communicating with a remote system, that's nearly a certainty. Even if the remote system itself might be trusted, the medium might not be. ...
Deduplicator's user avatar
  • 9,081
16 votes

How to keep applications stateless

Statefulness is not necessarily a bad thing, but you need to understand the difference between stateful and stateless apps. In short, stateful apps maintain information about the current session, and ...
Robert Munn's user avatar
  • 1,299
15 votes
Accepted

Is it a good practice to hide the framework used in a web application?

Hiding your framework does not guarantee security. But it makes successful attacks less easy. Even assuming that all your software is up to date, if you broadcast the fact that you are using ...
amon's user avatar
  • 135k
15 votes

Use Case of HTTP GET Request with a Body

GET requests with a body are supported in the HTML specs. See the Stack Overflow question Is this statement correct? HTTP GET method always has no message body for a discussion. However, it's unusual. ...
Ewan's user avatar
  • 77k
14 votes

.NET: Are web-based applications inherently harder to build than client-server?

Building a web application is absolutely more complicated and harder to build than client-server, for a given set of features. There are a variety of reasons and ideas I'll describe in no particular ...
whatsisname's user avatar
  • 27.6k
12 votes
Accepted

How to architecture a realtime-heavy websockets-based web application?

How to structure the data that is sent from the server to the user? Use the messaging pattern. Well, you're already using a messaging protocol, but I mean structure the changes as messages... ...
Kasey Speakman's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible