Yahoo! Canada News - Breaking News, Top Stories and Daily News C 7 lines of code, 3 minutes: Implement a programming language A small (yet Turing-equivalent) language The easiest programming language to implement is a minimalist, higher-order functional programming language known as the lambda calculus. The lambda calculus actually lives at the core of all the major functional languages--Haskell, Scheme and ML--but it also lives inside JavaScript, Python and Ruby. It's even hiding inside Java, if you know where to find it. A brief history Alonzo Church developed the lambda calculus in 1929. Back then, it wasn't called a programming language because there were no computers; there wasn't anything to "program." It was really just a mathematical notation for reasoning about functions. Fortunately, Alonzo Church had a Ph.D. student named Alan Turing. Alan Turing defined the Turing machine, which became the first accepted definition of a general-purpose computer. What makes this remarkable is that there are only three kinds of expressions in the lambda calculus: variable references, anonymous functions and function calls.
Why Your Links Should Never Say “Click Here” by anthony on 06/20/12 at 10:39 pm Have you ever wanted your users to click your links, but didn’t know how to get them to act? When some designers run into this problem they’re tempted to use the words “click here” on their links. “Click” Puts Too Much Focus on Mouse Mechanics Using the word “click” on your links takes the user’s attention away from your interface and on to their mouse. “view” relates to the users task, while “click” puts the focus on mouse mechanics Instead of using the word “click”, look for a different verb you can use that relates to the user’s task. “Here” Conceals What Users are Clicking Some links don’t use the word “click”, but instead they use the word “here”. when your link doesn’t just say “here”, users can skip the verbose text and go right to the link Not only that, but If you have multiple links that say “here”, “here” and “here”. the user is going to have trouble differentiating between each link. Phrasing Links the Right Way Link to Nouns Link to Specifics
Signs of the Times News for Wed, 09 Jun 2010 colabora com Living PlanIT no desenvolvimento de uma cidade sustentável, inteligente e interligada Comunicado de Imprensa, 28 Junho 2010 A Cisco Systems, Inc., anunciou hoje a assinatura estratégica de uma carta de intenções com a Living PlanIT, companhia líder em tecnologia urbana focada no desenvolvimento e operações urbanas sustentáveis. A carta de intenções compreende a colaboração entre duas empresas visionárias, juntando o conhecimento, as soluções e as capacidades tecnológicas de ambas as empresas com o objectivo de desenvolverem comunidades inteligentes e sustentáveis no futuro. A parceria estratégica é construída mediante a visão partilhada de urbanização sustentável, combinando as arquitecturas da Cisco® Smart+Connected Communities e a tecnologia da Living PlanIT que vai ser aplicada e implementada no desenvolvimento e nas operações do PlanIT Valley, uma comunidade inteligente e sustentável do Município de Paredes, no norte de Portugal, num projecto classificado pelo Governo Português de Potencial Interesse Nacional (PIN). Destaques: Ver mais notícias
Just What is a UX Manager? Earlier this week, I wrote quick blog post, calling out seven lessons for UX managers from this year’s MX conference. Then on Twitter, Livia Labate, who leads the experience design practice for Marriott International asked, “Dear @AdaptivePath, what is a UX Manager?” Here’s my not-so-twitter-length response: UX managers come with all sorts of fancy-pants titles. Someone who manages user experience has stuck their neck out and said they'll deliver business outcomes through improving the experience that customers have with a product or service. That means you believe UX is a force that can not only improve people's experiences but that it can also drive business. Why I <3 UX Managers Okay, let it be said that I'm biased. I've spent the past six years trying to get to know as many of you as I can, either speaking at or chairing Adaptive Path's Managing Experience conference. What I've learned is that this is an emerging discipline. What UX Management Isn't The Core of UX Management
Prototyping: Picking the Right Tool By Todd Zaki Warfel, Messagefirst Originally published: Mar 18, 2010 Editor's note: This article is a chapter from Todd's book Prototyping: A Practitioner's Guide. In 2008, I ran the first survey on prototyping for this book. My goal was to understand what tools UX people are using for prototyping, why they’re using those tools, and what they want from those tools. I also wanted to see how my experiences and choices compared to the rest of the UX community. Roughly 200 people responded from a variety of UX backgrounds, including researchers, designers, developers, product managers, and business analysts. Influencers When I started this book, most of my prototyping was done using HTML and CSS. One day, I decided to bite the bullet and get familiar with the Prototype and script.aculo. us JavaScript library. At the time of writing this chapter, most of my prototyping is still done using HTML, CSS, and Prototype and script.aculo.us. The available prototyping options continue to grow.
Principles of User Interface Design Clarity is job #1 Clarity is the first and most important job of any interface. To be effective using an interface you've designed, people must be able to recognize what it is, care about why they would use it, understand what the interface is helping them interact with, predict what will happen when they use it, and then successfully interact with it. While there is room for mystery and delayed gratification in interfaces, there is no room for confusion. Clarity inspires confidence and leads to further use. Kludget Widget Engine Digital Scarcity | Tuhin Kumar "2 Billion Likes per day on Facebook. 400 Million Tweets per day on Twitter. 50 Million likes per day on Instagram." We live, for most part, a life that is eerily being encroached by the digital. Every day we find a part of the analog being replaced by the digital. An app to replace a board game, a website to answer a question instead of asking a friend, an app to know what's happening instead of looking around and talking. You might answer back, one can like something or fav it or share it and that is an intent of telling others, this is GOOD. But it is not just WE, as the users of these systems and tools, who are to be blamed for this state of affairs. What is the core difference between a like, a favorite, loving something, digging it, up-voting it, pinning it or any of the other infinite pseudo means we have come up with to express recommendation or curation. At the risk of sounding elitist, I urge fellow craftsmen to build systems that make people think, ponder, wonder and admire.
Usage Patterns for Gaelyk | Object Partners Inc Using Groovy on Google App Engine is relatively simple due to Groovy’s compatibility with Java. However, until recently, the framework support has been lacking. Grails now supports GAE through the use of the app-engine plugin and the gorm-jpa plugin. Gaelyk is quickly emerging as one of best frameworks for development on Google App Engine. By design, Gaelyk does not force any particular usage pattern. The Gaelyk tutorial lays out a a very simple usage pattern: Create an entity, populate with parameters from the request, save. def person = new Entity("Person") person << params person.save() Here the params object contains request parameters. One approach is to define domain objects as you would in a typical MVC framework. The middle ground approach that I find most useful is to define your domain, but not as an object. Here is a Gaelyk plugin that I’ve created for this approach. The basic pattern used by this approach is very similar to the pattern in the Gaelyk tutorial.
Why Responsive Design is Not Built for the User Jeff Hasen is CMO of Hipcricket, a mobile marketing and advertising company. Marketers and designers have been told repeatedly of the benefits of responsive design. I, however, believe these benefits are mostly myths, since the theory hasn’t lived up to all that it’s promised. Some claim that responsive design automatically fits all devices: It is a simple design build that extends across many browsers and devices. In actuality, if a site is not designed for mobile first, users will encounter problems fast. Designers are mistaken in assuming responsive design is one-size-fits-all, because desktop-specific images on a website are larger in file size than those used on a mobile site and can, therefore, jam users’ precious bandwidth and patience. Even if responsive design promises one build to start, a designer still must test it on each device and on every generation. Image via Shutterstock
I Design Your Eyes