loading...

This is Real Life

faradayyg profile image Friday Godswill ・1 min read

You've probably already Mastered React, I bet you've mastered CSS grid and Flexbox too, and oh you know enough of VueJS and Angular to get by.

I bet you're proud of yourself.

This is real life, bro.

In real life, people don't update their browsers, and others still use Opera Mini and, you guessed it, CSS grid will not work.

This is real life, and you will be forced to use Jquery over React.

This is real life, and in real life, You can't just dump your database tables and start afresh. Well, you can, but I cannot guarantee what will happen after you do.

This is real life, even if your internal APIs are RESTful, I bet you will have to work with some external SOAP APIs, tough luck.

I bet you hate to look at one thousand-line functions, I do too. I bet, also that you are itching to refactor. But can you, really? I mean, this is real life and so many other things depend on this one function, something could break you know. But hey, have a crack at it if you would.

We all love to build new products instead of debugging some old code written by some guy you never knew, who returns plain HTML from an API endpoint. But this is the real world, and you have to maintain that cash cow.

In the end, it's not about the languages you know, it's not about how much "ninjutsu" you can do with this shiny new framework. In the end, it's the basics that count.

Discussion

pic
Editor guide
Collapse
baukereg profile image
Bauke Regnerus

It's not just about shiny new frameworks. Legacy browsers are a safety and security risk. In this day and age where tech is such a big part of our lives, people still using these browsers should be educated about the risks and definitely not supported.

Collapse
javislaterlp profile image
Javi

To be honest, 99% of the times you don't need to support old tech. It is important that your product serves as much people as possible, but is more important to focus your product. If, for example, your web's target is gamers, supporting IE6 and Opera is surely overkill. And real life

Usually only very specific type of software targeted to companies which depend on outdated OSs is worth the effort.

Also, almost everybody has a smartphone with evergreen browsers in their pocket. Even if you are constrained by old tech in your workplace, you can still do everything.

If your company requires you to support old tech, then do it. But I don't even transpile my ES6 to ES5 in personal projects.

Collapse
_tommylong profile image
Tommy Long

"This is real life" is just an excuse to avoid being professional. If an employer is pushing you into being unprofessional then it's better to head for the door.

Collapse
bobmyers profile image
Bob Myers

In real life, people don't update their browsers,

Who are these mysterious people? You have to try very hard these days to turn off automatic updates. Unless you do that, your browser stays up to date. If you do do that, then whatever does not work is your problem.

I can think of no better way for a product to fail than that the developers were worrying about how to support IE10 instead of developing new features.

Collapse
gladuz profile image
Jamshid Tursunboyev

Maybe it is hard to prevent updates in developed countries. But in most developing countries mobile data is really expensive and people just can't update because of the cost. For example, a lot of my friends use UC Browser Mini, which does not interpret almost any JS. Many people get 20Mb per day and just 1 update of the browser is like 2 days of Internet usage. Yeah I also don't want to support old browsers but I have to, because our product should work not in the NASA type networks, but our people's devices.

Collapse
hoffmann profile image
Peter Hoffmann

Serving to then thousands of teachers. They have strict no-auto-update policy at schools and Germany really is not a developing country. Old not updated browsers are a real thing. I found the most obscure FF and CH versions and I won't even talk about the little number behind IE that we need to support.

Collapse
bobmyers profile image
Bob Myers

Well then, you have to decide if your professional direction involves using ten-year old technology because you or your employer are serving a market using obsolete technology. What is your career plan? When this job is over, you'll move to Laos where they still need people who can support IE8, which is your area of expertise?

Thread Thread
hoffmann profile image
Peter Hoffmann

My career plan must be to stay at the same employer for the rest of my life.

Collapse
hoffmann profile image
Peter Hoffmann

You are oh so right. But just accepting your fate wouldn't be the right path.
First of all, you need some time for a little extra work.
Understand your code, get to know it, add comments and explain it to your rubber duck. In order to change your code you need to know where it came from.
Next you build a solid framework around your code aka tests. Write tests that test the heck out of all your 1000 liner functions, your ten layer deep incestuous class hirachy and all the annoying pre historic js code.
If you've done that you make sure you realy covered all the nifty special and edge cases.
And now get away from all your digital devices and head for some paper, a legal pad, a black/white board or sticky notes. (Successfull) Redesign starts whith a better structure not just new code. Not "new is always better" but "only better is worth the change". Read a book or two, discuss your ideas.

Now you are finaly at the point of writing new code.

Traverse from old still runnig code to backward compatibile polyfixed code. Test everything you write and hope that your changes will proof to be indeed better than what came before.

Collapse
cutiko profile image
Erick Navarro

A part of real life is not considered is: there is always a limited budget. Supporting old stuff cost extra, clients won't pay for it.

Collapse
hoffmann profile image
Peter Hoffmann

This is real life. The client rather pays for the extra old client support than updating that stuff b/c it might cost more to update.