Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Our small shop excels at data modeling and algorithms, but we increasingly face challenges getting the presentation and rendering correct. I would like others to explain to me which strategies are effective in reducing the amount of time needed to chase out small but difficult UI problems for browser-based apps.

Creating a polished interface was not too difficult when applications where mostly static and page-based. However, we increasingly struggle to create professional looking results as the technology grows more complicated and clients demand more sophisticated front-ends.

Our latest creation involves Shiny, bootstrap and others. The frameworks in use require Less and a legion of jQuery plugins. It took us a week to implement most of the functionality and to make it render in the browser 95% correctly. However, we spent the next week fixing a UI element was not re-sizing correctly. We had to hack one of the frameworks to implement the fix.

Our previous project had similar challenges. Solving minor UI challenges consumes more and more of our dev budget. How are other software engineers and their teams successfully meeting these challenges?

We have found a few local contractors who can solve these problems in a day or two, but their rates have become exorbitant. And their lead times to engagement has stretched into months; they have become very backlogged.

As the expectations for front-end for Web apps grows more sophisticated. Clients demand more responsive, more polished applications. How can we deal with our UI challenges more efficiently and effectively?

share|improve this question

closed as too broad by gnat, GlenH7, MichaelT, Kilian Foth, MetaFight Jan 21 at 16:42

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs. If this question can be reworded to fit the rules in the help center, please edit the question.

    
"Your questions should be reasonably scoped... avoid asking subjective questions where … every answer is equally valid..." (help center) –  gnat Jan 16 at 16:18

1 Answer 1

Without knowing more specifics, it's hard to identify actual problems with your approach. However, based on my experience facing the same issue in the past, I think the biggest thing you can do (aside from hiring a full time front-end developer who specializes in UI design) is to remember that less is more. Take a look at the UI elements that most modern, responsive pages have in common. They are far simpler, far less exactingly structured, than top-shelf websites from eight or ten years ago. A big part of that is how they conceptualize the design of their site. It's not about getting the border width and margin offset on the table exactly right. It's often about getting rid of the table completely, and finding a better, simpler way to present the information to their audience.

A few books you might want to look into that touch on the subject: Don't Make Me Think (Revisited) and The Design of Everyday Things.

As always, YMMV.

share|improve this answer
    
I fondly remember reading The Design of Everyday Things. If I were to put the advice into practice, I would say use a "thin stack". Ditch bootstrap, ditch Less.js, ditch Shiny. Ditch anything that has superfluous and not immediately necessary. This aligns with my personal philosophy. –  ahoffer Jan 16 at 16:43
    
"A designer knows he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away." –  Locke Jan 16 at 16:51

Not the answer you're looking for? Browse other questions tagged or ask your own question.