In Angular, it’s very easy for a directive to call into a controller. Working in the other direction – that is, calling a directive function from the controller – is not quite as intuitive. In this blog post, I’ll show you an easy way for your controllers to call functions defined in your directives.
First, calling a controller function from a directive is straightforward. You simply define a “callback” function in the controller and pass it to the directive (using the ‘&’ symbol in the isolated scope definition). It’s then trivial for the directive to invoke the function, which calls into the controller. To put things in .NET terms, this is akin to a user control (the directive) raising an event, which the user control’s host (the controller) can handle.
For example, you may want your directive to call your controller when the…
I dislike visual clutter. Most people do. Perhaps they can’t articulate it. I know most of our clients say things like, “It looks too crowded,” if presented with something that strikes them that way. They don’t use the words “visual clutter” as we would in design parlance.
However, that idea of clutter-reduction has recently over-reached its bounds in the oft-cited and overused mantra of “flat design.” I’m all for simplifying, but there are some designers who take it too far, slashing and ripping out things that they claim help to simplify the UI to its bare essentials, but they’re only thinking one-dimensionally, pun intended.
When you’re a hands-on CEO, you want to get involved in every aspect of your company. Now, as UX Design becomes a differentiating factor for product and company visibility, CEOs are paying more attention to design, but some, like Yahoo!’s Marissa Mayer, are ham-handing it.
Print style sheets, should in theory, be simple. You strip out the complicated junk from your page, and format it a little better for a piece of paper. Right? Wrong. Print style sheets are a pain in the butt. They’re hard to debug, finicky depending on the browser, and downright annoying to get perfect.
User Experience design has always been, and continues to be, a field riddled with ambiguous labeling and nomenclature. We hear all sorts of conjecture and debate as to what terms have what specific meaning. Are profiles and personas the same thing? When exactly do wireframes become mock-ups? Is “mock-up” supposed to hyphenated? These are issues of semantics, and when it comes to the actual meat of the work we do, we could call a wireframe a “whosamawhatsit” and it wouldn’t change it’s purpose. From the perspective of standardizing our professional space, common labeling is important. This is not in doubt. Client, asset, and project management aside, there is something vital to the decisions that we make as designers that is not addressed as often as it should be: Science.
Visio 2013 was released recently with updates including the new visio file format .vsdx, easier collaboration abilities and my favorite, the ability to provide data graphics to shapes. In this blog I will be discussing some of the basics of creating and using these data graphics with both internal Visio data and external data sources.
A lot of confusion surrounds the concept of block and inline elements, and its not unusual for this confusion to persist indefinitely. I’m hopefully going to clarify this tiny but influential difference for everyone in just a few images and with one CSS property.
The first image is a screen capture of the HTML and CSS I’ve used. Note how everything is behaving according to it’s default properties. The headers create line breaks, the anchor tag doesn’t.
Creating successful user experiences is an art. A lot of art involves taking advantage of the way that the brain processes information. The most successful designs (user experiences or otherwise) are those that give off feeling of “how else would you do it?”. The design simply seems to make sense. Designing an interface is a more complex process than simply creating links and putting arrows on a page. To compare this process to that of another in art in terms of complexity- let’s have a look at foreshortening. Foreshortening in art is a good illustration of how difficult it is, because it illustrates that something that seems so obvious once it’s done well. It harnesses the power of the brain to fill in the things it’s expecting, even if they aren’t there.
One of the reasons that HTML standards are so important is because HTML is a language that has historically been written with a lot of errors and now has many different versions. One of the rules that has been generally agreed upon by browser makers is “don’t break the web”. This means that all new browser versions have to be able to work with all the older standards and handle errors in code in a meaningful way.
Brief (but required) history lesson:
Back when IE had 90% or so of the market share, browsers were essentially an enigma. It was hard to know exactly how things worked. Now that open source browsers have a significant part of the market share and there is competition between them in terms of functionality, how the browser works is coming into the light.
There are a lot of rules that front end engineers follow and consider standard, but a lot of F2E’s don’t know why we do some things. It’s crucial that you be able to justify to your clients or your boss why you take the time to follow best practices, and to make decisions based on all of the facts.