Programming

add news feed

post a story

RT @ross: Sample chapter of the book Present Yourself about using SlideShare, by @zsazsa and @andreameyer
RT @ross: Sample chapter of the book Present Yourself about using SlideShare, by @zsazsa and @andreameyer
about 2 hours ago
Pinterest has exploded in recent years from obscure project to global phenomenon. Why? And how can Pinterest’s user experience inform developers and designers of all sorts? Let’s learn from some of Pinterest’s bleeding ...
Pinterest has exploded in recent years from obscure project to global phenomenon. Why? And how can Pinterest’s user experience inform developers and designers of all sorts? Let’s learn from some of Pinterest’s bleeding edge design decisions. Search vs. Browsing: How Do You Help Your Users Discover Content? Pinterest is about discovery. It makes it so easy to find beautiful items and ideas. But how does a user experience balance user-led behavior (search) or an application-led behavior (browsing)? It is a design challenge to balance accommodating both behaviors while still establishing some information hierarchy, so that users don’t get confused. In Jakob Nielsen’s heuristics, this is the balance between “Flexibility and Efficiency of Use” and “Aesthetic and Minimalist Design”. You could prominently slap the search bar across the top of the navigation above the main feed for browsing the way Facebook is testing here. Or you could make a search-only experience the way Google has, with browsing reserved for the results section only. There is no default browsable content in Google Search because it is an intent-driven product in which you often know what you are looking for ahead of time. But neither of these are ideal for Pinterest. Facebook likely weights search more heavily than Pinterest, given the rollout of graph search and the relatively larger and more complex data that Facebook users would be searching. Moreover, as mentioned above, there is user intent to harvest: with Facebook and Google, it’s much more likely that you want to search for a person, topic, or other very specific object. On the other hand, Pinterest heavily demotes search across platforms. For starters, it’s easy to click on pretty pictures than figuring out what to search for and typing it in — character by character — into a search field you would have to first find, click into, and hit enter for…once your query was typed. But on mobile especially, Pinterest recognizes the user context. Search is painful when you’re on the bus, walking down the street glued to your phone, or in a crowded elevator. Your input accuracy, and consequently user experience, correlates positively with an input’s ease of use. In other words, tapping on pictures is a lot easier than tapping 5-20 characters that each occupy less than a square centimeter on a just barely usable keyboard when you’re in motion. Pinterest on Desktop Web Here you can barely find search in the top left. It doesn’t stand out because there is no color contrast. The images that are front and center capture attention. But it’s there if you need it. But on a mobile website, Pinterest product designers have even less screen real estate. Consider a 4.87″ x 2.31″ screen (iPhone 5) vs. 12.78″ x 8.94″ (13″ Macbook Pro). That’s approximately a 10x difference in surface area (11 sq. inches on mobile phones vs. 114 sq. inches on laptops). Pinterest on Mobile Web (iPhone) That’s when you really see what their priorities are. Search is now hidden behind an icon, unlike Google.com on mobile (which is rarely used anyway, given that it’s often built into the browser). But for Google, Search is the primary use case, so even with the limited real estate, exposing the search field by default is an immutable priority. Google.com on an iPhone 5 Pinterest applies this same browse before search approach to its native mobile app. Native Pinterest Mobile App (iPhone) Search admittedly is just one click away. But the interface definitely demotes search through shadows, gradients, overlay objects (i.e. notifications), and deliberate ordering. Notably, even when you do choose to search for something, Pinterest really helps you avoid typing in favor for just tapping a category. Aligned with Hick’s Law, Pinterest wants to reduce user’s time-to
about 3 hours ago
2013/06/19 -- Arthur Zubarev
2013/06/19 -- Arthur Zubarev
about 3 hours ago
I've always found descriptors to be one of the more confusing corners of Python. Partly, I think that's to do with the explanations in the docs, which I find opaque: In general, a descriptor is an object attribute wit...
I've always found descriptors to be one of the more confusing corners of Python. Partly, I think that's to do with the explanations in the docs, which I find opaque: In general, a descriptor is an object attribute with “binding behavior”, one whose attribute access has been overridden by methods in the descriptor protocol.What is binding behavior, and why is it in quotes? This lead sentence hints at overriding attribute access, but doesn't tell me how it happens. It's a tall wall to scale right at the start of the learning process.The best explanation I've seen of what descriptors do and why you'd want to write them was in Chris Beaumont's lightning talk at Boston Python, Demystifying Descriptors in 5 Minutes. The video quality was not great, but now Chris has written it up: Python Descriptors Demystified.(Sorry about the quality, we're getting much better... PS: subscribe to our YouTube channel!)Chris' insight was that instead of defining descriptors, and then showing how you could make properties with them, he flipped that explanation around: explain properties, then show how descriptors are like generalized properties. Read the whole thing: Python Descriptors Demystified.When explaining things, you have to build from what people already know, a step at a time. I picture a student's understanding being like geography. What they know is a land mass, and when you teach them, you are extending their land out into the unknown ocean. You want to make their island bigger, and there's a particular point out in the ocean you want to encompass.Some technical descriptions will explain that distant point, and either hope you can build the peninsula yourself, or expect to be able to build backwards toward the mainland. The classic descriptor explanation is like that: provide a definition of the distant concept, and hope students can make the leap.Chris' explanation is more incremental. Start with what we know, and extend a little bit at a time, with motivations as we go. I love it.BTW: I made some edits to the Python documentation, but they haven't been adopted: Edits to descriptor howto. Others have also suggested reorganizations of the docs about descriptors: Harmonizing descriptor protocol documentation.Descriptors are still an advanced feature, and I don't expect everyone to understand and use them. But they are not as complicated as they first seem, and the explanations can do a better job helping people up that learning curve.
about 4 hours ago
Everyone knows that with more skills, opportunities for advancements, income and responsibility follow. But what’s the value of your Agile skills? As enterprises scramble to find developers with Agile skill sets, how can you be sure you ...
Everyone knows that with more skills, opportunities for advancements, income and responsibility follow. But what’s the value of your Agile skills? As enterprises scramble to find developers with Agile skill sets, how can you be sure you are earning what you are really worth in today’s market? HP and ASPE may have the answer for you.
about 4 hours ago
ASP
Earlier this week, I have done five part blog series on NuoDB and it was very well received by audience.NuoDBis an elastically scalable SQL database that can run onlocal host,datacenterand cloud-based resources.t is an operational NewSQL...
Earlier this week, I have done five part blog series on NuoDB and it was very well received by audience.NuoDBis an elastically scalable SQL database that can run onlocal host,datacenterand cloud-based resources.t is an operational NewSQL database built on a patented emergent architecture with full support for SQL and ACID guarantees. In this blog post, […]...Did you know that DotNetSlackers also publishes .net articles written by top known .net Authors? We already have over 80 articles in several categories including Silverlight. Take a look: here.
about 4 hours ago
2013/06/18 -- Shahab Yunus
2013/06/18 -- Shahab Yunus
about 4 hours ago
Cool Python tricks : PythonSaw the above thread on the Python subreddit,python.reddit.com ( http://www.reddit.com/r/python/ ).The thread is about this Quora post:http://www.quora.com/Python-programming-language-1/What-are-some-cool-Pytho...
Cool Python tricks : PythonSaw the above thread on the Python subreddit,python.reddit.com ( http://www.reddit.com/r/python/ ).The thread is about this Quora post:http://www.quora.com/Python-programming-language-1/What-are-some-cool-Python-tricksOne of the comments in the reddit thread refers to this StackOverflow thread, which I also happened to see some days ago:http://stackoverflow.com/questions/101268/hidden-features-of-pythonAll of the three threads describe various Python tricks.User gfixler's comment in the reddit thread about the correct vs. the "correct" Pythonic way was of interest too.- Vasudev Ramdancingbison.comVasudev Ram
about 5 hours ago
2013/06/18 -- Franc Carter
2013/06/18 -- Franc Carter
about 5 hours ago
2013/06/18 -- Bryan Talbot
2013/06/18 -- Bryan Talbot
about 5 hours ago