- Build Quality In — an e-book collection of Continuous Delivery and DevOps experience reports from the wild. Work in progress, and a collection of accumulated experience in the new software engineering practices can’t be a bad thing.
- UX Directory — collection of awesome UX resources.
- Designing for Large-Screen Cellphones (Luke Wroblewski) — In his analysis of 1,333 observations of smartphones in use, Steven Hoober found about 75% of people rely on their thumb and 49% rely on a one-handed grip to get things done on their phones. On large screens (over four inches) those kinds of behaviors can stretch people’s thumbs well past their comfort zone as they try to reach controls positioned at the top of their device. Design advice to create interactions that don’t strain tendons or gray matter.
- fastsocket (Github) — a highly scalable socket and its underlying networking implementation of Linux kernel. With the straight linear scalability, Fastsocket can provide extremely good performance in multicore machines.
Design is transforming the way things are to the way they ought to be.
Design aligns humans and technology, it aligns business and engineering, it aligns digital and physical, and it aligns business needs and user needs. Here at O’Reilly, we’re fascinated by the design space, and we’re launching several initiatives focused on the experience design community.
Design is both the disruptor and being disrupted. It’s disrupting markets, organizations, and relationships, and forcing us to rethink how we live. The discipline of design is also experiencing tremendous growth and change, largely influenced by economic and technology factors. No longer an afterthought, design is now an essential part of a product, and it may even be the most important part of a product’s value. Read more…
Josh Clark and Tim O’Reilly on designing beyond screens, and beyond a single device.
As the Internet is increasingly embedded into our physical world, it’s important to start designing for physical and intentional interactions with interfaces to supplement the passive, data-gathering interactions — designing smart devices that service us in the background, but upon which we also can exert our will.
In this episode, Josh Clark (in an interview) and Tim O’Reilly (in a keynote) both address the importance of designing for contextual awareness and physical interaction. Clark stresses that we’re not facing a challenge of technology, but a challenge of imagination. O’Reilly argues that we’re not paying enough attention to the aspects of people and time in designing the Internet of Things, and that the entire system in which we operate is the user interface — as we design this new world, we must think about user needs first.
Adding consistency to Kivy's Python UI tools
Kivy has a wonderful set of built-in widgets that can be extended in numerous ways. They have very useful behaviors, but their look and feel may not integrate well with your App or the platforms you are targeting. Kivy doesn’t support theming out of the box right now, but if you poke around enough, there are a range of options you can use to customize the default look of widgets without having to define your own inherited versions of them.
I’ll first introduce you to Kivy’s image atlases, which are less mysterious than they sound, and are important groundwork for understanding theming in Kivy. Then you’ll learn two different ways to do manual theming in Kivy, with an eye to future automation.
To understand theming, you must first understand atlases. An atlas is essentially a collection of distinct images combined into a single image file for loading efficiency. A JSON file describes the location of the separate images inside that master image file so that Kivy can access them directly. If you’ve ever worked with CSS sprites, you know exactly what I’m talking about. If you haven’t, the following example should explain everything.