Working in a company which has a variety of customers all using different technologies creates multiple challenges when developing day to day.
One of those in particular that affects me the most is the different browsers that are used.
With over 30 + different versions of Chrome, 11 + major versions of Internet Explorer, Edge and not to mention Firefox, it means that every website is different.
Below I will give a brief breakdown of the different approaches I take to working with specific browsers, firstly starting with my preferred choice of browser to develop with, Chrome.
Developing with chrome is, I feel, the cleanest and least time-consuming, in particular when developing UI-based functionality.
Here is where I can make sure everything is working to the best it can be without having to worry about “will this CSS selector be compatible with this particular browser”.
Chrome also provides multiple add-ons etc, which can be added within the development and testing process. For example, de-bugging extensions which I can connect to my IDE and debug within the browser.
Once I have finished developing (in Chrome), I then tend to switch to Firefox and give everything the once over. For a lot of people, Firefox is their preferred choice of browser, it is up to the individual.
Although firefox works similarly to WebKit browsers, i.e Chrome, it actually uses a different browser engine. I have had multiple cases where a bit of CSS is interpreted differently by the browser and I have had to find a solution that suits both.
Moving onto Internet Explorer. Developing with internet explorer is the most challenging of all browsers. Although Microsoft ended its support for Internet Explorer (which has been replaced with Edge), it is still an important part of my day to day development.
I use virtual machine to develop with the older Internet Explorer versions and use a cross-browser tool to test my code against the newer versions. Developing with older versions, although more challenging, can still be fun.
When developing new functionality, I am always cautious to make sure my code is compatible with these browsers which, in turn, I feel improves my overall code quality.