Tag Info

Hot answers tagged

35

With correctly written and complete requirements, there is no such a thing as a distinction between bugs and poor performance. Because you specify the performance as a non-functional requirement, poor performance becomes a bug just like any other bug, and will be caught by QA and solved by developers before release. Is there a social problem? I don't think ...


23

This is old research but 10 seconds is bad: http://www.useit.com/papers/responsetime.html from the page: The basic advice regarding response times has been about the same for thirty years [Miller 1968; Card et al. 1991]: •0.1 second is about the limit for having the user feel that the system is reacting instantaneously, meaning that ...


19

It's just to try and ensure that you enter the correct address, without typos. Since email addresses are usually the primary contact information for websites, it's considered worth the extra effort to try and make sure it gets entered correctly. It's sometimes called two-pass verification.


16

Welcome to a slippery slope. You've by this point realized that there is an endless variation of all the model-view interactions. MVC, MVP(Taligent, Dolphin, Passive View), MVVM just to name a few. The Model View Presenter pattern, like most architectural patterns is open to a lot of variety and experimentation. The one thing all the variations have in ...


13

CSS isn't trying to make things more difficult on purpose, it was designed with a far simpler goal in mind, variables and hierarchies are hardly its only shortcomings. LESS and Sass exist specifically to address these shortcomings, and until either capability is natively supported, you should stick with them. That said, W3C's CSS Working Group is working on ...


12

The problem(?): The customer (or end-user) does not complain about it (enough) Thus the project(/product) manager does not consider it a requirement Thus the developer does not get the time to fix it. You have to start at the beginning, educate the customers. But if they buy the iPhone instead of a faster, less shiny phone, the developers are right to ...


10

The Non-Designer's Design Book, while oriented to general design will give you an overview of why some things look better than others in general design terms. It doesn't cover colour theory so much but I found it generally helpful in understanding the basics of how to make things look better. You could find more on colour theory in design if you know that ...


10

Linkedin do this for their mobile site (see http://engineering.linkedin.com/nodejs/blazing-fast-nodejs-10-performance-tips-linkedin-mobile part 4), and it's apparently been very beneficial for them from a performance standpoint. However, I'd suggest you avoid doing the same, for various reasons. The first is maintainability: C#/ASP.net is, due to it being ...


9

More than two seconds without an hour-glass and I'm already pretty skeptical. Different people will have some different expectations but I would expect 10 seconds with no feedback to even acknowledge that I clicked a button or whatever would annoy almost anyone. Whether or not it matters to annoy your users is another question.


8

Depending on how you've built your application, hopefully the layers below your UI will 'catch' any edge cases that you don't specifically cater for in your UI layer. So, for a lot of unusual or uncommon edge cases, it's OK for the UI give a generic error, as long as the more functional layers catch it and deal with it, and data destruction or pollution ...


8

I'm awful at designing UIs but there are a couple of things that I find very useful: You'd be amazed at what a difference using an icon set, as opposed to default images on buttons and other controls, will make. (There are free icon sets (silk icons is a good one, I think) but be careful of licensing.) Always get a second opinion.


8

I have encountered this problem many times in my career - the trick is to first be aware that it is a problem, and acknowledge it. Once you've done that, it's easier to stop making overly complex interfaces. The user interface is also a part of software engineering, but perhaps for many software engineers not as much interesting. However, there are many ...


8

Sadly, I find the biggest issue is you can't do everything. You have a ship date, and you know it's slow, but you NEED to get features X,Y,Z out to market. In your mind, slow you can fix later, but the app at least works. So, you worry about functionality and aesthetics (because users focus on aesthetics all to often). Next release you'll fix ...


8

Use ExtJS if you want to go that way, don't reinvent the wheel. But be prepared, this means a complete paradigm change. You HTML skills are nearly obsolete. AJAX everywhere, the server mostly provides an AJAX API. You will write a lot more javascript than ever, so better make sure you are really fit with javascript.


7

You may use copy/paste to save typing the e-mail address twice but in doing so you are defeating the object of the repeated entry. Many e-mail addresses are long and as such are prone to entry error as you type. I have had addresses with the domains @freeserve.co.uk, @virginmedia.co.uk and @emsglobaltracking.com all of which are long enough for a finger ...


7

The biggest problem IMHO of UI Testing exclusively is that the permutations of things to be tested, even in a relatively simple app, are too great and the level too high to catch many potential defects. Code coverage is not going to be very high. You will probably find and locate some major items that will inhibit the users in a few scenarios (best case, ...


7

At my work, we started using UI tests in addition to our unit and integration tests. Of the three types, the UI tests take the longest to write and to run and catch the fewest amount of bugs. They are also extremely brittle, failing sporadically for no good reason. Because they take so long to run and do not pass consistently, we found that it was not worth ...


6

I would return an empty array. It bothers me when people return null collections instead of empty collections. The majority of what I would be doing with your return value will be iterating over it, mapping over it etc. and my functions will work correctly with an empty array, but will either break, or have to be modified to deal with null The worst is when ...


6

The team I'm in decided to migrate to ExtJS late 2008. We had at that point a 200.000 line PHP app that suffered from front-end issues. Our situation was much worse than yours, because we had a handrolled form controls framework that was really bad, and we had heavy use of iframes to load sections of the page (the visual architecture dated back to 2005, and ...


6

In an ideal (service oriented multi-tier) world UI should communicate to a business layer through data contracts and a service facade. The UI should not need to know anything about the actual business layer or the entities and methods the business layer works with. So a UI and service facade would share a data contract definition (these can be simple ...


6

"Declarative UI" means you describe in some kind of language what elements you need in your UI, and to some degree how they should look like, but you can leave out details like the exact position and visual style of the elements. For example, in HTML you can describe that you want an input field, but how and where this field will be placed at the UI is ...


5

I agree with others, that we should find ways to make developers care more about the problem, like making them test on slower hardware, and having performance goals. That's all fine, but really, when it comes to performance tuning -- People Gotta Know How - And They Don't They may think they do, but just look through all the performance-related questions ...


5

Different historical background that now are unifying I must say the reason is the historical background. Web pages was simple text documents at the beginning, with forms. Then more and more functionallity was added with scripting (JavaScript) and separation of semantics (HTML) and design (CSS). GUI applications has always been applications with ...


5

My guess is that they are referring to things like progressive enhancement, graceful degradation, paper prototyping, storyboards, etc. It might also extend into UI testing strategies. Mentioning those would at least give you some keywords to shape your answer around.


5

I'd be okay with either of the latter. I don't like the first one because you're changing the actual data type returned (int rather than array). Optimally, I'd go with the second one as it makes more semantic sense. If you're returning an array of selected items, then it makes more sense (again, semantically) to check array.length === 0 than array === ...


4

I suppose you could argue about how programmers and designers have different mindsets or different personalities, or argue about left-brain versus right-brain and creative versus logical, but really, there are three fundamental issues: Programmers' work is their software. They care about it; they devote their attention to it; they can get excited about ...


4

Your refactoring is fine, especially if MonitorUrlsFromFile() is duplicated code. You don't need a "decoupling from the UI" sensibility to justify that refactoring; it can be justified on its own merits. The error propagation scheme depends on a number of factors. Generally, I use a BackgroundWorker object or thread or something similar to receive status ...


4

Its a very broad and open ended question, so there's no "right" answer. With that being said, your answer is being compared to other candidates. Just judging on what you said, I'd probably try a different approach. Dividing markup / styles / javascript is great from a coding design standpoint. But you could write perfect code in that manner and still have a ...



Only top voted, non community-wiki answers of a minimum length are eligible