This is not a front-end development tutorial and you will not learn any new coding techniques by reading this.
It is just a simple reminder why we should embrace the current state of front-end development instead of complaining about its complexity.
TL;DR Be happy for what you’ve got, you could be also out of a job like the millions of Flash developers around the globe.
15 years ago I was an aspiring designer or developer.
I had no idea what I want to do, I just knew that I like to create things for the world wide web.
After a year of working on a few freelance jobs I slowly realised that coding is my thing.
I was excited about being able to turn designs into a working website and make it work in every browser.
By implementing a few Content Management Systems, I have learned how to give the clients the power to change the content on their own.
It enabled me to add some interactivity to my projects and I felt like I can do anything on the web.
I loved that time and was keen to learn more.
Here is a short break down of the good and bad from the past.
- things used to be much more simpler
- I didn’t have to make many decisions
- the user expectations was quite low
- reloading a page on click was completely acceptable
- website interactivity was pretty limited
- and animations (non Flash) on the web were pretty much impossible to create
These were the good old times but we were still frustrated because of many things.
- CSS layouts with float and clearfix felt like a hack
- rounded corners needed crazy overbloated HTML markup
- SVGs or transparent images were not supported everywhere
- dealing with evil browser workarounds (looking at you IE6) was on my daily routine
- DOM manipulation was very heavy for the browsers
- and complex interactivity would freeze or crash some browsers
The simplicity was great but a poor browser implementation and inconsistencies made it challenging, yet rewarding job.
I was very excited to see how the new technologies move the web forward.
I was dreaming about all the bad things to be implemented properly.
I was dreaming about fast, responsive UI with a lot of data being handled by the browsers without crashing all the time.
And now? Now we have it. We have it all and much more.
Actually we have so many options today on how to create something awesome that a lot of developers constantly complain about it!
The tools, libraries and frameworks available now allow us to:
- create CSS layouts without any hacks
- use rounded corners, transparency and SVGs
- choose from thousands of free web fonts
- build complex interactivity without any issues
- create animations running buttery smooth at 60fps
- build data heavy web apps working in all modern browsers
- request loads of data from external APIs and getting it almost instantly
Today we can build all this and we should embrace how far the web has moved in the recent years.
The web will get better if there is more excited front-end developers out there.
To help you get over the complexity try some of the following:
- remove all distractions and learn from a simple demos
- learn one thing at a time (yes, it is still possible)
- embrace the change and learn something new everyday
- only learn what you need and nothing you don’t
- share this reminder with a grumpy developer (he will be better for it)
The more excited we as a front-end developers are about learning new things, the more and quicker we learn and the better apps we create.
In other words be happy for what you’ve got, you could be also out of a job like the millions of Flash developers around the globe.
I can’t wait to build more responsive and faster UI with the latest CSS specifications, instead of spending time coding workarounds for old browser imperfections.
I am excited to learn the new library or framework, because what it enables me to create is something that I was only dreaming about 10 or 15 years ago.
And what about you? How do you feel about the hundreds of blog posts being published on the topic of depressed tired and grumpy developers?
Or are you in the happy camp, keen to learn new things?
Let me know in the comments below.
Like What You're Reading?
Sign up to receive my future tutorials and demos straight to your inbox.
No spam, Unsubscribe at any time.
I can understand that we’re in a much better place than we were and still lament that terrible things are being lauded as best practices. I remember table layouts and spacer GIFs (pronounced “jiffs”). I remember FrontPage’s Java animations and have used Flash 3 to create navigation animation. I don’t have to agree that React is the One True Solution (it isn’t), that CSS-in-JS gives me any benefits at all (it doesn’t), or that I must absolutely use the latest in ES7 features via incomprehensible transpilers (I don’t).
Things like CSS Modules, which changes one well-known problem into a different, brand-new problem. JSX which, rather than separating concerns, fully integrates them. And a whole set of terrible practices built on otherwise-okay technologies that, for example, require everyone to copy/paste the same code into their project to create a “button” class.
If I wasn’t grumpy when I couldn’t make easy animation on the web, CSS transitions/animations would never have happened. If I wasn’t grumpy about using bloated, overly-complex frameworks, the new nimble frameworks and libraries would never have happened. If we weren’t all grumpy about the delay in loading the JVM into a browser, we might all still be using Java Applets (and, incidentally, be much happier since that problem has been fixed).
So, I will continue to be “grumpy” when people are shoving manure in my face expecting me to eat it with a smile. It’s the only way things will continue getting better.
Hey Doug, fully respect your opinion. The article was not meant to start a negative conversation.
Instead I wanted to remind myself and others that things are getting better and the future of front-end development is bright.
I am trying to be positive and excited about learning new things, that helps me learn quicker.
Well, it’s called technological evolution, I believe. People will not stop looking for better, productive, easier solutions. Nevermind the grumpy.
I’m overwhelmed because everyone is trying to create the next big framework or technique instead of letting us iron out existing things and making them work flawlessly.
Petr, I feel the same way. For me, Flexbox and css grid are fundamentally changing the way I build sites.
I was just telling a friend today how liberating front end development is for me at the moment.
Your enthusiasm is palpable. Two takeaways for me :
“embrace the change and learn something new everyday
only learn what you need and nothing you don’t”