Skip to main content

The bitter divorce of PSD and HTML

    Today's article is an interesting post that I read. The original post in Portuguese and authored by Fabricio Teixeira can be found at arquiteturadeinformacao (Now don't ask me pronounce this =)).


    Some are calling it the death of PSD but I prefer calling it a "divorce". PSD and HTML are both healthy and living strong, just that they do not live together anymore. "PSD to HTML", which for years was the most accurate and sometimes the only right path to web design process, seems like has its days counted.

    Firstly you draw a page in Photoshop; impeccable layout, representing exactly how the web pages would appear when opened in a browser. After a sign-off on this picture (PSD) from the client the front end developer transforms these pictures into HTML, CSS and Javascript. The assets are cut, one by one, exported from the PSD and integrated into the HTML. Plugins and new tools are created in the process and some companies even charge upto $100 to do this process for you.

    As articulated by Nick Pettit on the treehouse Blog, PSD to HTML is a process that makes perfect sense at first glance. It can be a difficult process to start working on the development of a web page without knowing exactly how the designers hope to get the final result. Experience in PSD first and then create a final product seems to be a very reasonable process.

    It turns out that the scenario has changed considerably in recent years. The direction in which the web design is heading brings some aspects that make this process of PSD to HTML to start getting outdated. Among the major changes are:

Design in CSS

    After CSS3, many of the visual effects that were earlier achieved only with the tools of Photoshop (shadow, rounded corners and gradients among many others) started becoming available by mere use of CSS code. Previously, if a box had rounded corners, then the developer had to export the edges as images and make them fit to the pixel. Most modern browsers now support the CSS to implement this. Rare are the scenarios where we still have to support the troublesome Internet Explorer.

Responsive Design

    If you are a front end web developer, you are pretty much aware of the challenges involved in designing websites that run on all resolutions available in the market - especially after the rise of smart phones, tablets, phablets and the chaos by the lack of standardization of the screen sizes by the manufacturers of these devices. The Responsive Design comes as a very effective solution to these problems. Now back to the example of rounded corners. It is almost impossible to make these fit perfectly on all resolutions available in the market and it deceives those who think that its ok to support the 3 or 4 most common breakpoints and chuck the rest.



Flat Design

    With the trend of flat design setting in, interfaces without much shadow, bevel, emboss and all that jazz allow more and more sites to be designed using CSS alone using images for photos and specific backgrounds only. This has resulted into greatly reduced use of Photoshop visual effects.

Market Maturity

    Over the years, the web design industry has matured significantly. Designers and developers have begun to learn what works well and avoid what does not. In most companies, designers are expected to have an accurate knowledge of what is achievable with the currently available technologies. No crazy solution is proposed which hasn't been tried and tested earlier.

Does that mean Photoshop is dead?

    No. Definitely not. Photoshop is still very important in web design. However, it is now more of a sketchbook than an actual step in the process of web development. Designers test solutions in Photoshop to determine the harmony of the page and display the visual identity for customers and other stakeholders. The layout also serves as a discussion tool for everyone to come a consensus on the look that the product should have.

Designing in the browser

    Brad Frost is one of the programmers who has captured this shift in thinking. According to him, the best way to design a website in a browser is to get the developer to code on the same day the designer starts thinking on the branding. Below is a interview in which he tells a bit about the process that he usually applies in the projects he participates in.


    This is how the sketch board looks now a days for the developers while the designers create the branding for the customer.


    This is how a once popular and sometimes the only method to generate good functioning web pages is slowly and steadily making way for a more developer oriented web development with little to no dependency on Photoshop assets and layouts.

Recommended for You

Difference between word-break: break-all versus word-wrap: break-word

The 2 CSS properties word-break: break-all and word-wrap: break-word appear to work in the same way or generate the same output, but there is a slight difference between the 2 and we will be discussing these differences today.



    Take a look at the example above. The difference is quite evident, however I will try to explain it further.

word-break: break-all Irrespective of whether it’s a continuous word or many words, break-all breaks them up at the edge of the width limit even within the characters of the same word
word-wrap: break-word This will wrap long words onto the next line.break-word adjusts different words so that they do not break in the middle.
    So if you have many fixed-size spans which get content dynamically, you might just prefer using word-wrap: break-word, as that way only the continuous words are broken in between, and in case it’s a sentence comprising many words, the spaces are adjusted to get intact words (no break within a word).     In case you want to exp…

Material UI, Google Polymer & Web Components

Google introduced Material UI during the Google I/O a few days back. Since then the web is all abuzz with articles about material UI and what Polymer is and how these 2 fit together. In this article today, I will try and helps us all to get a better understanding of these new concepts.


    So, let's start with Material UI first. Google has for long been trying to bridge the gap between the Web and the Android worlds with a unified user interface and Google's Material UI is a big step towards this. The new design philosophy is about dynamically adjusting the elements according to screen size, add more white space between elements, provide a lot of user feedback using animations, make use of bold UI colors and be flat and 3D about the design at the same time. Now that sounds really cool, isn't it? Well, actually it is and you will actually appreciate and enjoy it all the more when you watch the following video from this year's Google I/O.


    Now let's shift our…

Form info window

Today we will look at a Google Maps API v3 example to add a form in the information bubble! This is usually required when we wish to accept some data/information from the user! This data can be saved to a server in the form of an XML file or a database! The information can then be retrieved back at a later stage, when necessary!

         In this example we will only look at form in the information bubble! The connectivity part with the server will be discussed in another post! So, today's code snippet is as seen below!

<html>
<head>
<title>
Google Maps API v3 - Adding marker and info window on Click and creating a form in the infowindow with the lat-lng information in it.
</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
var map;    //When using event as a parameter to a function declare map, strictly as a global var…

Onclick polygon

Yesterday we had a look at a simple polygon example. But that example was not exciting as it was all hard-coded with no user interaction and which means no fun! Today's example will deal with creating a polygon on the fly, i.e. an on-click polygon in action!

    The code for creating a polygon is very much similar to creating a polyline! The only difference is that you need to replace "Polyline" by "Polygon" in such examples. Let's head on to our code.


    The output of the above code can be viewed in the result section above. If you have any doubts or queries regarding the above code then please comment here or feel free to drop me a mail! Till then, happy mapping!

Retriving co-ordinates...

We have seen 2 Google Maps API v3 examples wherein we have retrieved the latitude-longitude co-ordinates of the point of click on the map. In the first example we have displayed the co-ordinates in the information window and in the second, we have displayed the co-ordinates in a form in the information window.

        Today we will create a code to retrieve the latitude longitude co-ordinates in a text box while simultaneously a marker appears on the map as well. So, here goes the code.

<html>
<head>
<title>
Google Maps API v3 - Adding marker on Click and retrieving the co-ordinates in a text box
</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
var map;    //When using event as a parameter to a function declare map, strictly as a global variable
function initialize()
{
    var myLatlng = new google.maps.LatLng(28.635157…