When I started out doing web development, hundreds of years ago when CGI and Perl was a pretty neat thing, it felt like there were few tools for web development. Back in the day even formmail.pl was a pretty neat idea... until it turned out to be a pretty hideous security hole.
It's not just the front end, how's the back end doing?
So I just need to split my simple CRUD app into 12 microservices, each with their own APIs which call each others' APIs but handle failure resiliently, put them into Docker containers, launch a fleet of 8 machines which are Docker hosts running CoreOS, "orchestrate" them using a small Kubernetes cluster running etcd, figure out the "open questions" of networking and storage, and then I continuously deliver multiple redundant copies of each microservice to my fleet. Is that it?
Let's be honest. It's nuts. I can't keep up. I don't even know what keeping up means any more. Do I have to know everything?
For example, I looked at Angular, I thought meh, that doesn't seem worth it. I know I wasn't alone in that:
Angular is Zope, #527, acquisition: "…will search for this directive in their ancestors and use it if found." http://t.co/ocdi7JhezM— Paul Everitt (@paulweveritt) April 5, 2014
Instead I focused on playing with Go for a while which was fun. Now it looks like Angular is going the way of Dojo and we should be using React. In fact we are using React, and that seems pretty awesome. But just trying to keep up with learning how to build a project in React whilst doing everything else is a challenge.
This seems to be an industry where we don't focus. Peter Bengtsson said to me the other day these wise words: "Our professional lives isn't about building things. It's about worrying about not building things with certain tools".
And of course my professional life has a continual pressure about my next job. What do I need to learn to make sure I can get a job somewhere else? Because of course, this is IT, nothing is for ever.
A while ago I wrote this:
The problem is that all these things I'm not doing cause me stress. When I get to the end of the day, sometimes all I see is a lack of accomplishment and a list of things I haven't done.
I'm not keeping up with all the new libraries, tools and things springing up all over the place. I never will be, this industry is growing and moving faster than anyone can keep with and it's accelerating in size and scope every day. Its awesome its improving so fast. If you don't get comfortable with this happening you are on a road to burn out.
Celebrate what you do know and admit that you too are probably not keeping up either and that's ok.