# keyboard

A keyboard is a physical or virtual input device used for text entry and interaction with computer systems.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## I had two weeks, an 8-foot keyboard, and a Wordle Workflow

DevFeed: [I had two weeks, an 8-foot keyboard, and a Wordle Workflow](<https://devfeed.tech/articles/i-had-two-weeks-an-8-foot-keyboard-and-a-wordle-workflow-35875.md>)

Original publisher: [Read original article](<https://temporal.io/blog/i-had-two-weeks-an-8-foot-keyboard-and-a-wordle-workflow>)

Author: Shy Ruparel

Published: 2026-07-21T00:00:00Z

Content type: article

Language: en

Sources: [Temporal Blog](<https://devfeed.tech/sources/temporal-blog.md>)

Topics: [Development](<https://devfeed.tech/topics/development.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Figma](<https://devfeed.tech/topics/figma.md>)

Tags: [conference](<https://devfeed.tech/tags/conference.md>), [figma](<https://devfeed.tech/tags/figma.md>), [game](<https://devfeed.tech/tags/game.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [temporal-voices](<https://devfeed.tech/tags/temporal-voices.md>), [usb](<https://devfeed.tech/tags/usb.md>)

### AI overview

Temporal describes building and presenting a Wordle clone driven by Temporal Workflows, using an 8-foot USB-C keyboard and holographic fans to demonstrate durable execution at AI Engineer World's Fair.

### Source excerpt

A Wordle clone, an 8-foot keyboard, and a holographic fan display made Temporal's Durable Execution visible at AI Engineer World's Fair.

## How Temporal's Senior Developer Advocate Built 2,000 Interactive Badges for Replay

DevFeed: [How Temporal's Senior Developer Advocate Built 2,000 Interactive Badges for Replay](<https://devfeed.tech/articles/i-built-2-000-badges-for-replay-and-i-m-not-sure-i-ve-slept-since-december-35730.md>)

Original publisher: [Read original article](<https://temporal.io/blog/badges-for-replay-and-i-havent-slept-since-december>)

Author: Shy Ruparel

Published: 2026-05-20T00:00:00Z

Content type: article

Language: en

Sources: [Temporal Blog](<https://devfeed.tech/sources/temporal-blog.md>)

Topics: [Hardware](<https://devfeed.tech/topics/hardware.md>), [developer-relations](<https://devfeed.tech/topics/developer-relations.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [screen](<https://devfeed.tech/topics/screen.md>), [Job](<https://devfeed.tech/topics/job.md>)

Tags: [community](<https://devfeed.tech/tags/community.md>), [conference](<https://devfeed.tech/tags/conference.md>), [developer](<https://devfeed.tech/tags/developer.md>), [electronic](<https://devfeed.tech/tags/electronic.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [interactive](<https://devfeed.tech/tags/interactive.md>), [manufacturing](<https://devfeed.tech/tags/manufacturing.md>), [project](<https://devfeed.tech/tags/project.md>), [temporal-voices](<https://devfeed.tech/tags/temporal-voices.md>)

### AI overview

Temporal Senior Developer Advocate Shy Ruparel describes the design and manufacturing process behind 2,000 interactive electronic badges made for the Replay developer conference, including the project's hardware concepts and production challenges.

### Source excerpt

Temporal's Senior Developer Advocate, Shy Ruparel, built 2,000 interactive electronic badges for Replay. Here's how he pulled it off.

## More Accessible Focus Indicators with Compose

DevFeed: [More Accessible Focus Indicators with Compose](<https://devfeed.tech/articles/more-accessible-focus-indicators-with-compose-38521.md>)

Original publisher: [Read original article](<https://eevis.codes/blog/2026-04-30/more-accessible-focus-indicators-with-compose/>)

Author: Eevis Panula

Published: 2026-04-30T07:11:56.799000Z

Content type: tutorial

Language: en

Sources: [Eevis Blog](<https://devfeed.tech/sources/eevis-blog.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Accessibility](<https://devfeed.tech/topics/accessibility.md>), [Android](<https://devfeed.tech/topics/android.md>), [Web Content Accessibility Guidelines](<https://devfeed.tech/topics/web-content-accessibility-guidelines.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>)

Tags: [accessibility](<https://devfeed.tech/tags/accessibility.md>), [accessible](<https://devfeed.tech/tags/accessible.md>), [android](<https://devfeed.tech/tags/android.md>), [compose](<https://devfeed.tech/tags/compose.md>), [focus](<https://devfeed.tech/tags/focus.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [web-content-accessibility-guidelines](<https://devfeed.tech/tags/web-content-accessibility-guidelines.md>)

### AI overview

A tutorial on creating more visible keyboard focus indicators in Jetpack Compose. It explains relevant WCAG Focus Appearance requirements, notes that Android's default ripple may be insufficiently visible, and introduces the Indication API for drawing custom indicators such as an underline on focused interactive components.

### Source excerpt

Last summer, I wrote a blog post about focus management with Compose. Ever since, I've had drafts of this post, but I didn't get to finalize it until now. The blog post is available in: It's All About (Accessibility) Focus And Compose. So, in this blog post, we're talking about focus indicators and how to make them more accessible with Compose. But let's first talk about focus indicators in general. Focus Indicators Focus indicators are, as the name suggests, indicators that show where keyboard focus currently is in the UI. They need to be visible so that keyboard and keyboard-emulating device users can navigate around the app effortlessly. An important thing to note is that the focus indicator I'm talking about here is not for the screen reader (e.g., TalkBack) focus. That is handled on the system level. Web Content Accessibility Guidelines (the standard behind accessibility legislation and used with apps as well, despite the name) has some requirements for accessible focus indicators. Per SC 2.4.13 Focus Appearance, the focus indicator needs to be either User agent's (Android system) default styles At least 2 pixels thick and has a contrast ratio of at least 3:1 between the same pixels of focused and unfocused states. Android's default focus indicator is the ripple, which isn't very visible. Technically, it would pass, but if you want to make the application accessible, you'll need to improve the visibility of the focus indicator. Let's next discuss one way to build more visible (and thus, more accessible) focus indicators with Compose. Building More Accessible Focus Indicators with Compose There are several ways of creating the focus indicators. You can, for example, add a border based on the focused state, as Appt.org suggests in their code snippets: Accessibility focus indicator in Jetpack Compose, but if you want anything more complex, you'll want to turn to Indication API. Indication API with a DrawModifierNode can be used to draw complex focus indicators. In

## Adding Navigation support to Large Content Viewer with Compose

DevFeed: [Adding Navigation support to Large Content Viewer with Compose](<https://devfeed.tech/articles/adding-navigation-support-to-large-content-viewer-with-compose-38519.md>)

Original publisher: [Read original article](<https://eevis.codes/blog/2026-02-28/adding-navigation-support-to-large-content-viewer-with-compose/>)

Author: Eevis Panula

Published: 2026-02-28T04:26:46.364000Z

Content type: tutorial

Language: en

Sources: [Eevis Blog](<https://devfeed.tech/sources/eevis-blog.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [navigation](<https://devfeed.tech/topics/navigation.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [screen](<https://devfeed.tech/topics/screen.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [compose](<https://devfeed.tech/tags/compose.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [navigation](<https://devfeed.tech/tags/navigation.md>), [screen](<https://devfeed.tech/tags/screen.md>), [test](<https://devfeed.tech/tags/test.md>)

### AI overview

This tutorial explains how to add keyboard and assistive-technology navigation to a large content viewer built with Jetpack Compose. It presents an approach using focus handling to show item previews, covers keyboard and screen reader navigation, and discusses voice access support. The author notes that the example is a demo and should be tested with users of assistive technologies before production release.

### Source excerpt

In my previous blog post, Beyond Font Scaling: Large Content Viewer with Compose, I explained how to build a large content viewer from iOS using Jetpack Compose. The implementation did not include support for keyboard or other assistive tech navigation, so this blog post tackles those topics. A disclaimer: The way I'm presenting the support for assistive tech navigation in this blog post is one approach, and my goal is to provide examples and context, but as always, this is a demo project. In your production app, things might get a bit more complicated, and you might need to handle more variables. So always remember to test the solution, ideally with your users who use assistive technologies. And I hope it goes without saying: Before releasing to production. In this blog post, I'm presenting code for keyboard and screen reader navigation, then sharing some considerations for voice access support. The code relies heavily on the code presented in the previous blog post, so if you have questions about it, please check that post. A link for the full code is also provided at the end of the blog post. Keyboard Navigation Support The pointer input implementation presented in the previous blog post relies on long-press, but keyboard navigation doesn't support that kind of interaction, so we need another tactic to display the item preview. With a keyboard, focusing on an item is a natural choice, so we're going to use that. The idea is that when a user who navigates with a keyboard or a keyboard-emulating device focuses on a bottom bar item for the same duration as a long press, we will show the item preview. We can do this with the following code: NavigationBarItem( modifier = Modifier .onFocusChanged { if (it.isFocused) { scope.launch { delay( viewConfiguration.longPressTimeoutMillis ) previewedItem = item } } else { previewedItem = null } }, ... } We use the onFocusChanged-modifier. Its state indicates whether the current element is focused via it.isFocused. If it is, we

## Creating a Keyboard Shortcut Hook in React (Deep Dive)

DevFeed: [Creating a Keyboard Shortcut Hook in React (Deep Dive)](<https://devfeed.tech/articles/creating-a-keyboard-shortcut-hook-in-react-deep-dive-37598.md>)

Original publisher: [Read original article](<https://www.taniarascia.com/keyboard-shortcut-hook-react/>)

Author: hello@taniarascia.com

Published: 2024-10-19T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tania Rascia](<https://devfeed.tech/sources/tania-rascia.md>)

Topics: [React](<https://devfeed.tech/topics/react.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Code](<https://devfeed.tech/topics/code.md>), [App](<https://devfeed.tech/topics/app.md>), [Front end](<https://devfeed.tech/topics/frontend.md>)

Tags: [caching](<https://devfeed.tech/tags/caching.md>), [code](<https://devfeed.tech/tags/code.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [front-end](<https://devfeed.tech/tags/front-end.md>), [function](<https://devfeed.tech/tags/function.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [keyboard-shortcuts](<https://devfeed.tech/tags/keyboard-shortcuts.md>), [react](<https://devfeed.tech/tags/react.md>), [shortcuts](<https://devfeed.tech/tags/shortcuts.md>)

### AI overview

A tutorial on creating a custom React hook for keyboard shortcuts. It covers single keys, modifier combinations, key sequences, event-handler caching, stale state, and preventing shortcuts while typing.

### Source excerpt

Recently I needed to add some keyboard shortcuts to an app I was working on. I wrote up some example code and decided to write this article...

## Detect Caps Lock with JavaScript

DevFeed: [Detect Caps Lock with JavaScript](<https://devfeed.tech/articles/detect-caps-lock-with-javascript-37478.md>)

Original publisher: [Read original article](<https://davidwalsh.name/detect-caps-lock>)

Author: David Walsh

Published: 2024-02-06T10:33:10Z

Content type: tutorial

Language: en

Sources: [David Walsh](<https://devfeed.tech/sources/david-walsh.md>)

Topics: [JavaScript](<https://devfeed.tech/topics/javascript.md>), [passwords](<https://devfeed.tech/topics/passwords.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Users](<https://devfeed.tech/topics/users.md>)

Tags: [javascript](<https://devfeed.tech/tags/javascript.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [password](<https://devfeed.tech/tags/password.md>), [users](<https://devfeed.tech/tags/users.md>)

### AI overview

A tutorial explaining how to detect whether Caps Lock is enabled during keyboard events with JavaScript, helping developers warn users when entering passwords.

### Source excerpt

Anyone is capable of having their caps lock key on at any given time without realizing so. Users can easily spot unwanted caps lock when typing in most inputs, but when using a password input, the problem isn't so obvious. That leads to the user's password being incorrect, which is an annoyance. Ideally developers could [...] The post Detect Caps Lock with JavaScript appeared first on David Walsh Blog.

## Optimizing your workflow does matter in the long run

DevFeed: [Optimizing your workflow does matter in the long run](<https://devfeed.tech/articles/optimizing-your-workflow-does-matter-in-the-long-run-37177.md>)

Original publisher: [Read original article](<https://arkadiuszchmura.com/posts/optimizing-your-workflow-does-matter-in-the-long-run/>)

Published: 2023-11-05T00:00:00Z

Content type: opinion

Language: en

Sources: [Arkadiusz Chmura](<https://devfeed.tech/sources/arkadiusz-chmura.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Learning](<https://devfeed.tech/topics/learning.md>)

Tags: [context](<https://devfeed.tech/tags/context.md>), [keyboard-shortcuts](<https://devfeed.tech/tags/keyboard-shortcuts.md>), [optimizing](<https://devfeed.tech/tags/optimizing.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

The article argues that tailoring a programming workflow, improving typing speed, and learning editor keyboard shortcuts can reduce context switching and wasted effort. It uses the author's marathon experience to illustrate how attention to small details and strategy can improve performance.

### Source excerpt

Having your environment tailored to you and the way you work can save you from context switching, losing focus, reaching for your mouse, or simply wasting time.

## Switching between apps using shortcuts on macOS

DevFeed: [Switching between apps using shortcuts on macOS](<https://devfeed.tech/articles/switching-between-apps-using-shortcuts-on-macos-37179.md>)

Original publisher: [Read original article](<https://arkadiuszchmura.com/posts/switching-between-apps-using-shortcuts-on-macos/>)

Published: 2023-08-22T00:00:00Z

Content type: tutorial

Language: en

Sources: [Arkadiusz Chmura](<https://devfeed.tech/sources/arkadiusz-chmura.md>)

Topics: [macOS](<https://devfeed.tech/topics/macos.md>), [App](<https://devfeed.tech/topics/app.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>)

Tags: [keyboard](<https://devfeed.tech/tags/keyboard.md>), [macos](<https://devfeed.tech/tags/macos.md>), [shortcuts](<https://devfeed.tech/tags/shortcuts.md>), [spotlight](<https://devfeed.tech/tags/spotlight.md>), [switching](<https://devfeed.tech/tags/switching.md>)

### AI overview

A developer explains how to switch between frequently used apps on macOS with custom keyboard shortcuts. The approach remaps the right Command key as a Hyper key using Karabiner and assigns shortcuts in Raycast, with BetterTouchTool offered as an alternative.

### Source excerpt

This is one of the most common activities when working on a computer. To make it as seamless as possible, I assigned a custom shortcut for every app I commonly use.

## More Accessible Graphs with Jetpack Compose Part 2: Adding Keyboard Interaction

DevFeed: [More Accessible Graphs with Jetpack Compose Part 2: Adding Keyboard Interaction](<https://devfeed.tech/articles/more-accessible-graphs-with-jetpack-compose-part-2-adding-keyboard-interaction-38460.md>)

Original publisher: [Read original article](<https://eevis.codes/blog/2023-07-31/more-accessible-graphs-with-jetpack-compose-part-2-adding-keyboard-interaction/>)

Author: Eevis Panula

Published: 2025-06-11T04:27:33.850000Z

Content type: tutorial

Language: en

Sources: [Eevis Blog](<https://devfeed.tech/sources/eevis-blog.md>)

Topics: [Accessibility](<https://devfeed.tech/topics/accessibility.md>), [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Graphs](<https://devfeed.tech/topics/graphs.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>)

Tags: [accessibility](<https://devfeed.tech/tags/accessibility.md>), [accessible](<https://devfeed.tech/tags/accessible.md>), [graph](<https://devfeed.tech/tags/graph.md>), [graphs](<https://devfeed.tech/tags/graphs.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>)

### AI overview

This tutorial explains how to improve keyboard access for graphs built with Jetpack Compose. It describes the limitation that content descriptions are unavailable to keyboard-only users and introduces changing the highlighted x-axis position so users can inspect graph values. The author also notes that switch access is not covered because it did not work and required further research.

### Source excerpt

Welcome to the second episode of "More Accessible Graphs with Jetpack Compose" - in this blog post, we'll continue from where we left off in the first one. We will look at improving the (physical) keyboard access for graphs in Jetpack Compose. Link to the first part: More Accessible Graphs with Jetpack Compose Part 1: Adding Content Description At the end of the blog post, I mentioned that the second part would be about keyboard and switch access. After testing my code for the blog post, I realized that the switch access part didn't work. After some deep-diving into documentation, I admitted I wouldn't add it to this post as it would require a lot of research. So there likely will be at least four parts in this "More Accessible Graphs with Jetpack Compose"-blog post series. In the first blog post, we added a Higlighter-component, an overlay on top of the line graph I had built. Then we made it focusable and added a content description for accessibility services. After these changes, a keyboard user can already focus on the different parts of the graph, but there's one problem: The graph legend is not visible. And you may now wonder if it is really a problem - we added the content description, right? The content description is unavailable if you only use a keyboard. If a person, who can see and uses a hardware device for navigation, navigates with the graph in the current state, they probably get frustrated because this is what they would get: They can see that the focus changes but can't see the individual values. If I encountered something like this, I would think there is a bug in the app. Adding Keyboard Interaction Users can already focus on each section, so we no longer need to worry about that. But we'll need a way to change the currently focused position on the x-axis - like if a user was moving their finger on the graph. The highlightedX-parameter is the one that controls the currently highlighted position on the x-axis. We'll need to add a way to change it

## My Advice to a Developer New to Accessibility

DevFeed: [My Advice to a Developer New to Accessibility](<https://devfeed.tech/articles/my-advice-to-a-developer-new-to-accessibility-38446.md>)

Original publisher: [Read original article](<https://eevis.codes/blog/2022-07-22/my-advice-to-a-developer-new-to-accessibility/>)

Author: Eevis Panula

Published: 2023-01-03T08:57:33.125000Z

Content type: tutorial

Language: en

Sources: [Eevis Blog](<https://devfeed.tech/sources/eevis-blog.md>)

Topics: [Accessibility](<https://devfeed.tech/topics/accessibility.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [HTML](<https://devfeed.tech/topics/html.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [markup](<https://devfeed.tech/topics/markup.md>)

Tags: [accessibility](<https://devfeed.tech/tags/accessibility.md>), [accessible](<https://devfeed.tech/tags/accessible.md>), [advice](<https://devfeed.tech/tags/advice.md>), [developer](<https://devfeed.tech/tags/developer.md>), [development](<https://devfeed.tech/tags/development.md>), [element](<https://devfeed.tech/tags/element.md>), [elements](<https://devfeed.tech/tags/elements.md>), [focus](<https://devfeed.tech/tags/focus.md>), [html](<https://devfeed.tech/tags/html.md>), [html-elements](<https://devfeed.tech/tags/html-elements.md>), [input](<https://devfeed.tech/tags/input.md>), [interaction](<https://devfeed.tech/tags/interaction.md>), [interactive](<https://devfeed.tech/tags/interactive.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [learning](<https://devfeed.tech/tags/learning.md>), [markup](<https://devfeed.tech/tags/markup.md>)

### AI overview

This beginner-oriented accessibility article recommends focusing on progress rather than perfection and introduces semantic HTML, keyboard navigation, and listening to people with disabilities. It explains that semantic elements communicate meaning to browsers and developers and support appropriate interaction, while a div styled as a button may work only for mouse users and may not be focusable or keyboard-accessible.

### Source excerpt

Learning about accessibility for the first time can feel overwhelming. You start reading, and at some point, it hits you: There is so much to learn! And if you're like me and feel that it's your responsibility to make the things you create accessible, that might even make you feel anxious. And yes, there is a lot to learn regarding accessibility. But you don't need to know everything at once. As Meryl Evans reminds us in her tweet (and a blog post the tweet links to), it's about progress over perfection: https://twitter.com/merylkevans/status/1547635550466674692 So, here are some things I wish I had known when I first started learning accessibility. Heck, I wish I had known these things when I started learning web development! I'll share semantic HTML, keyboard navigation, and listening to people with disabilities. Learn Semantic HTML and Use It So, first thing: Learn semantic HTML. But what does it mean? Semantic HTML, or semantic markup, describes its meaning to the browser and developer in a human- and machine-readable way. So, with semantic elements, a human will know what the HTML element is about, and the browser knows what it should render and how it should behave when a user interacts with it. Here's an example: <button onClick={...}>I'm an honest button</button> That button uses a semantic button-element. When it does so, the browser knows what it should do when the user either clicks or activates it with a keyboard or other input device. Here's an example of a non-semantic "button": <div className="button" onClick={...}> I look like a button </div> So, this "button" made out of div looks like a button and even has the onClick-handler. So, wouldn't a human recognize it as a button? Well, yes and no. It depends on the human. You see, this "button" works only for mouse users. As div is not an interactive element by nature, it doesn't handle interaction the same way as, for example, a button-element. When using a semantic button-element, that onClick-event pro

## Don't Develop Just for Yourself - A Developer's Checklist to Accessibility

DevFeed: [Don't Develop Just for Yourself - A Developer's Checklist to Accessibility](<https://devfeed.tech/articles/don-t-develop-just-for-yourself-a-developer-s-checklist-to-accessibility-38434.md>)

Original publisher: [Read original article](<https://eevis.codes/blog/2021-05-28/dont-develop-just-for-yourself-a-developers-checklist-to-accessibility/>)

Author: Eevis Panula

Published: 2023-01-03T08:57:24.089000Z

Content type: tutorial

Language: en

Sources: [Eevis Blog](<https://devfeed.tech/sources/eevis-blog.md>)

Topics: [Accessibility](<https://devfeed.tech/topics/accessibility.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Usability](<https://devfeed.tech/topics/usability.md>), [alt text](<https://devfeed.tech/topics/alt-text.md>), [aria](<https://devfeed.tech/topics/aria.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [accessibility](<https://devfeed.tech/tags/accessibility.md>), [alt-text](<https://devfeed.tech/tags/alt-text.md>), [aria](<https://devfeed.tech/tags/aria.md>), [authoring](<https://devfeed.tech/tags/authoring.md>), [automated](<https://devfeed.tech/tags/automated.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [developer](<https://devfeed.tech/tags/developer.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [testing](<https://devfeed.tech/tags/testing.md>), [usability](<https://devfeed.tech/tags/usability.md>), [web](<https://devfeed.tech/tags/web.md>), [website](<https://devfeed.tech/tags/website.md>)

### AI overview

A beginner-oriented accessibility checklist for developers. It recommends manually testing keyboard navigation, focus visibility, and other website interactions after automated testing, while noting that the process does not guarantee full accessibility.

### Source excerpt

We, as developers, tend to develop sites unconsciously for people like ourselves. If we don't actively pay attention, the sites are often accessible only for certain types of people: Sighted mouse-users, who have good fine motor skills and are good at using computers. It leads to moments where no one who navigates the web with only a keyboard (or keyboard simulating device) can access and interact with the site. It is a pretty big group of people! We have a responsibility to make sites that work for all of our users. In some cases, it is required by law, but it is not the only reason we should care. This blog post is aimed for those at the beginning of their accessibility journey. You might know some things, like "always provide an alt-text for an image," but are unsure what to write there. Or you don't have any idea how to know if your site is accessible at all. Following this blog post won't make your site 100% accessible! The goal of this post is to provide some information about some things to check manually after using some automated testing. Keyboard Navigation First of all, abandon your mouse for a second. Don't use it. Try to navigate through the website using only the keyboard. Try to complete every task user needs to be able to complete on the website. Can you do it? Can you see where you are at the moment? Is the focus indicator (yes, that thing many designers and developers like to remove) visible enough? If you can't use the whole website with only a keyboard, that is an accessibility and usability problem. However, one thing to note here is that keyboard interaction is not necessarily accomplished with just tab and enter, as it has been at some point. The general pattern goes, as WAI-ARIA Authoring Practices state: A primary keyboard navigation convention common across all platforms is that the tab and shift+tab keys move focus from one UI component to another while other keys, primarily the arrow keys, move focus inside of components that include mult

## Joining the split keyboards club: a Moonlander story

DevFeed: [Joining the split keyboards club: a Moonlander story](<https://devfeed.tech/articles/joining-the-split-keyboards-club-a-moonlander-story-37847.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/split-keyboard-moonlander/>)

Author: Carlos Alexandro Becker

Published: 2022-05-07T00:00:00Z

Content type: opinion

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>)

Tags: [experience](<https://devfeed.tech/tags/experience.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [story](<https://devfeed.tech/tags/story.md>)

### AI overview

A personal account of adopting the ZSA Moonlander split keyboard after standard keyboards caused uncomfortable arm and wrist positioning. The author describes the motivation for choosing a split keyboard and the challenge of relearning to type.

### Source excerpt

This post will describe my experience with a couple of firsts:

## Happy New Year, the keyboard and cases are here!

DevFeed: [Happy New Year, the keyboard and cases are here!](<https://devfeed.tech/articles/happy-new-year-the-keyboard-and-cases-are-here-34856.md>)

Original publisher: [Read original article](<https://pine64.org/2021/12/31/happy-new-year-the-keyboard-and-cases-are-here/>)

Published: 2021-12-31T00:00:00Z

Content type: release

Language: en

Sources: [Community blog on PINE64](<https://devfeed.tech/sources/community-blog-on-pine64.md>)

Topics: [Pinephone-Pro](<https://devfeed.tech/topics/pinephone-pro.md>), [Pinephone](<https://devfeed.tech/topics/pinephone.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>)

Tags: [battery](<https://devfeed.tech/tags/battery.md>), [camera](<https://devfeed.tech/tags/camera.md>), [firmware](<https://devfeed.tech/tags/firmware.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [peripheral](<https://devfeed.tech/tags/peripheral.md>), [pinephone](<https://devfeed.tech/tags/pinephone.md>), [pinephone-pro](<https://devfeed.tech/tags/pinephone-pro.md>), [screen](<https://devfeed.tech/tags/screen.md>), [speaker](<https://devfeed.tech/tags/speaker.md>), [torch](<https://devfeed.tech/tags/torch.md>), [usb](<https://devfeed.tech/tags/usb.md>), [wireless](<https://devfeed.tech/tags/wireless.md>)

### AI overview

Pine64 announces that the PinePhone and PinePhone Pro keyboard case, along with add-on cases, are available in the Pine Store. The keyboard case features a 180-degree hinge, rearrangeable keycaps, open firmware, a 6000mAh battery, and USB-C peripheral support.

### Source excerpt

The PinePhone & PinePhone Pro keyboard case and add-on cases are now available in the Pine Store! Go to store About the keyboard case The keyboard case works with both the PinePhone and PinePhone Pro and features a clam-shell design. It uses pogo pins located on the phone's midsection and attaches by replacing the default back cover. When folded, the phone's screen and the keyboard rest securely against each other. The hinge features a 180° design, which not only allows for two-hand typing on a surface but also for comfortable thumb-typing when fully extended. The etched keycaps can be easily relocated for alternate layouts such as AZERTY or QWERTZ. The keyboard case runs an open firmware, which means that anyone with the know-how can alter existing functions or add new ones. The bottom (keyboard) and top (phone) sections of the assembly are well-balanced thanks to the large, 6000mAh, internal battery capable of charging the PinePhone (Pro) during operation. The internal battery effectively triples the phone's battery life. The internal keyboard battery can be manually toggled on/off and the keyboard's battery charge level can be read in the supported OSes; the keyboard remains functional with the battery fully depleted. You do not lose access to the PinePhone (Pro)'s USB-C port, speaker, microphone, or any external features, such as volume and lock buttons, with the keyboard attached. There is also a cut-out for the camera, torch, and headphone jack. The USB-C port on the keyboard is capable of powering both the keyboard and PinePhone (Pro) simultaneously. This means that you can plug in a USB mouse, a USB-C dongle, or some other peripheral while the phone and keyboard's internal battery charge. Please keep in mind that the keyboard case transforms the PinePhone (Pro) into a PDA, which means that taking calls will likely prove awkward without a wired or wireless headset connected. More information To learn more about the keyboard and its journey please read: Februa

## MacBook Pro 14 - a quick review

DevFeed: [MacBook Pro 14 - a quick review](<https://devfeed.tech/articles/macbook-pro-14-a-quick-review-37805.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/macbook-pro-14/>)

Author: Carlos Alexandro Becker

Published: 2021-12-22T00:00:00Z

Content type: opinion

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [macOS](<https://devfeed.tech/topics/macos.md>), [App](<https://devfeed.tech/topics/app.md>), [GUI](<https://devfeed.tech/topics/gui.md>), [Processes](<https://devfeed.tech/topics/processes.md>), [screen](<https://devfeed.tech/topics/screen.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>)

Tags: [apple](<https://devfeed.tech/tags/apple.md>), [apple-m1](<https://devfeed.tech/tags/apple-m1.md>), [apps](<https://devfeed.tech/tags/apps.md>), [battery](<https://devfeed.tech/tags/battery.md>), [discord](<https://devfeed.tech/tags/discord.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [mac](<https://devfeed.tech/tags/mac.md>), [macos](<https://devfeed.tech/tags/macos.md>), [magsafe](<https://devfeed.tech/tags/magsafe.md>), [memory](<https://devfeed.tech/tags/memory.md>), [processes](<https://devfeed.tech/tags/processes.md>), [review](<https://devfeed.tech/tags/review.md>), [rosetta](<https://devfeed.tech/tags/rosetta.md>), [screen](<https://devfeed.tech/tags/screen.md>), [usb](<https://devfeed.tech/tags/usb.md>)

### AI overview

A personal quick review of the 14-inch MacBook Pro with an Apple M1 Pro SoC, covering Rosetta 2 compatibility, Activity Monitor behavior, the notch, display, battery life, MagSafe charging, and the keyboard.

### Source excerpt

I got a MacBook Pro 14" with an Apple M1 Pro SoC, 16GB of memory and 500GB of disk a couple of weeks ago, and wanted to write my impressions about it, since a lot of people ask.

## Invitation to Play Along

DevFeed: [Invitation to Play Along](<https://devfeed.tech/articles/invitation-to-play-along-34818.md>)

Original publisher: [Read original article](<https://pine64.org/2020/07/29/invitation-to-play-along/>)

Published: 2020-07-29T00:00:00Z

Content type: opinion

Language: en

Sources: [Community blog on PINE64](<https://devfeed.tech/sources/community-blog-on-pine64.md>)

Topics: [Pinephone](<https://devfeed.tech/topics/pinephone.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [interface](<https://devfeed.tech/topics/interface.md>)

Tags: [game](<https://devfeed.tech/tags/game.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [pine64](<https://devfeed.tech/tags/pine64.md>), [pinephone](<https://devfeed.tech/tags/pinephone.md>), [requirements](<https://devfeed.tech/tags/requirements.md>), [usb](<https://devfeed.tech/tags/usb.md>)

### AI overview

Pine64 invites the community to design add-on hardware for the PinePhone, focusing on a Nokia N900-style slide-out keyboard and a gamepad. The keyboard has defined mechanical and electrical requirements, while the gamepad remains at an earlier exploratory stage.

### Source excerpt

Image from: Дмитрий Куртуков - Keyboard for PinePhone We are currently in talks with a number of hardware vendors regarding a Nokia N900-style, slide-out-design keyboard for the PinePhone. They'll have to produce mock-ups or prototypes for us to consider in the next few weeks. The requirements specify that the new device needs to: Interface with the PinePhone's rear pogo pin expansion connector Fit the PinePhone's form factor Seamlessly replace the current back cover and snap onto the phone Be similar, mechanically and functionally, to the Nokia N900 keyboard We are simultaneously also exploring a gamepad for the PinePhone. The criteria we're seeking in a gamepad are much vaguer than those of the keyboard: The gamepad must use the PinePhone's pogo pins (at least for power) It must attach mechanically to the phone. Preferably in an elegant way - velcro or adhesive are not an option. This add-on project is at an earlier exploratory stage than the keyboard, and therefore there is also some leeway regarding the general direction and shape it can take. Now, we'd like to invite you to play along. While we're waiting to see what the commissioned vendors will come up with, we'd also like to give you a chance to go at it. For the keyboard, we have settled on a 5-row key-arrangement design - a STP of the layout can be downloaded here. If you'll have a go at creating a keyboard then do keep in mind the general guiding points outlined above, but at the same time do not take them as commandments carved in stone. I guess what I am trying to say is - don't let the criteria restrict your creative vision. Suggested keyboard layout (filled in by hand) Regarding the game controller; since we're at a very early exploratory stage, you're welcome to explore a variety of approaches to creating such an add-on for the PinePhone. In other words, 'anything goes' as far as the controller's design is concerned. Functionality wise, the controller will have to be powered via the pogo pins but I t

## Implementing mouse pointer interactions on iPad

DevFeed: [Implementing mouse pointer interactions on iPad](<https://devfeed.tech/articles/implementing-mouse-pointer-interactions-on-ipad-39514.md>)

Original publisher: [Read original article](<https://rambo.codes/posts/2020-03-19-implementing-mouse-interactions-on-ipad>)

Published: 2020-03-24T21:00:00Z

Content type: tutorial

Language: en

Sources: [Rambo Codes](<https://devfeed.tech/sources/rambo-codes.md>)

Topics: [iOS](<https://devfeed.tech/topics/ios.md>), [ui](<https://devfeed.tech/topics/ui.md>), [coding](<https://devfeed.tech/topics/coding.md>), [GUI](<https://devfeed.tech/topics/gui.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>)

Tags: [animations](<https://devfeed.tech/tags/animations.md>), [apple](<https://devfeed.tech/tags/apple.md>), [coding](<https://devfeed.tech/tags/coding.md>), [gui](<https://devfeed.tech/tags/gui.md>), [implementing](<https://devfeed.tech/tags/implementing.md>), [interaction](<https://devfeed.tech/tags/interaction.md>), [ios](<https://devfeed.tech/tags/ios.md>), [ipad](<https://devfeed.tech/tags/ipad.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [sdk](<https://devfeed.tech/tags/sdk.md>)

### AI overview

A guide to implementing mouse and trackpad pointer interactions on iPadOS 13.4. It covers the relevant APIs, setup requirements, UIHoverGestureRecognizer, and hover animations while noting that iPad pointer behavior differs from macOS.

### Source excerpt

Gui Rambo writes about his coding and reverse engineering adventures.

## The 16-inch MacBook Pro

DevFeed: [The 16-inch MacBook Pro](<https://devfeed.tech/articles/the-16-inch-macbook-pro-38585.md>)

Original publisher: [Read original article](<https://marco.org/2019/11/13/mbp16>)

Author: Marco Arment

Published: 2019-11-13T13:30:08Z

Content type: opinion

Language: en

Sources: [Marco.org](<https://devfeed.tech/sources/marco-org.md>)

Topics: [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [reliability](<https://devfeed.tech/topics/reliability.md>), [Resilience](<https://devfeed.tech/topics/resilience.md>)

Tags: [apple](<https://devfeed.tech/tags/apple.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>)

### AI overview

The author's first-day assessment of the 16-inch MacBook Pro is optimistic despite several unchanged shortcomings. The article argues that replacing the butterfly keyboard with scissor switches, adding a hardware Esc key, improving key spacing, and restoring the inverted-T arrow-key layout address the MacBook Pro's most important previous problem.

### Source excerpt

After my first day with the new 16-inch MacBook Pro, I'm very optimistic about it. 🎧 Hear more on today's Accidental Tech Podcast! Two years ago, I wrote a wishlist to fix the MacBook Pro, and the 16-inch doesn't actually deliver most of it. But time and technological progress are slowly getting Apple off the hook: The ports are unchanged. We'll still need dongles. But USB-C is gradually becoming more common, and dongles are slowly -- very slowly -- getting less shitty. The Touch Bar isn't optional. But a new hardware Esc key removes one of its biggest drawbacks, and accidental input should be reduced by the increased spacing between the Touch Bar and the top row of keys. The power brick still lacks its previous conveniences. There's still no cable management, safety breakaway, or charging LED. But third parties are slowly filling some of these gaps. The headphone jack is still on the right (wrong) side, despite most single-sided headphone cables entering the left earcup. But the need for wired headphones is decreasing over time. Addressing those would be nice, but as I wrote then, they paled in comparison to one huge issue: the butterfly keyboard. The MacBook Pro must return to scissor keyswitches. If Apple only changes one thing about the next MacBook Pro, it should be this. It's far more important than anything else on this list. [...] The Magic Keyboard's scissor switches feel similar, but with a bit more travel, and all of the reliability and resilience of previous keyboard generations. [...] The Magic Keyboard only needs one change to be perfect for the MacBook Pro: returning to the "inverted-T" arrow-key arrangement by making the left- and right-arrow keys half-height again. This arrangement is much more natural and less error-prone because we can align our fingers by feeling the "T" shape, a crucial affordance for such frequently used keys that are so far from the home row. That's exactly what they've done, and I couldn't be happier. The new 16-inch MacBook Pro is

## The iPad Pro's keyboard limits comfortable typing away from a desk

DevFeed: [The iPad Pro's keyboard limits comfortable typing away from a desk](<https://devfeed.tech/articles/look-but-don-t-type-35134.md>)

Original publisher: [Read original article](<http://www.practicallyefficient.com/2017/06/24/look-but-dont-type.html>)

Author: Eddie Smith

Published: 2017-06-24T00:00:00Z

Content type: opinion

Language: en

Sources: [Eddie Smith](<https://devfeed.tech/sources/eddie-smith.md>)

Topics: [iphone](<https://devfeed.tech/topics/iphone.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>)

Tags: [apple](<https://devfeed.tech/tags/apple.md>), [iphone](<https://devfeed.tech/tags/iphone.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [productivity](<https://devfeed.tech/tags/productivity.md>)

### AI overview

The author argues that the iPad Pro remains difficult to use for serious typing away from a desk or table. Despite using the iPad frequently, they prefer the MacBook Pro for lap typing and the iPhone for some writing tasks because both offer more suitable keyboard forms.

### Source excerpt

Even though Gabe and I sometimes have slightly differing views on the iPad's productivity value compared to the Mac, with his latest post, I think we are completely in sync--metaphorical Chris Farley falls and all. In particular, he nails a massive friction point for me with the iPad: I can type more comfortably on my iPhone than I can with my iPad Pro on the couch, in bed, or even just reclined in the backyard. I'm sure there's a good case out there that will solve this problem, but I'd rather see Apple solve it. I've tried using various keyboards for my 13" iPad Pro, but I've never found one that let me comfortably type while sitting away from a flat table or desk. This has been a huge failure point from a practical perspective for me because the iPad, by design, begs to be used away from conventional "work stations." So the irony is that the only time I can do serious word creation on my iPad is while sitting at a desk or table. If I want to escape those confines, which is a frequent want, I use my 13" MacBook Pro, which has the same form factor as the big-big iPad, but allows for lap typing. Like Gabe, I also find myself in the funny position of using my iPhone to type more, even when my iPad is at hand. A great example: if I'm reading a book on my iPad, it's actually easier to write notes about the book using my iPhone. I even wrote this entire post in Drafts on my iPhone at the breakfast table. My iPad is in sight across the kitchen. I still use the iPad a lot, but its use cases for typing still remain very limited for me. The Mac and iPhone just have superior keyboard forms.

## How the keypress Event Differs Between Chrome, Safari, IE10, and Firefox

DevFeed: [How the keypress Event Differs Between Chrome, Safari, IE10, and Firefox](<https://devfeed.tech/articles/keypress-is-bananas-35527.md>)

Original publisher: [Read original article](<https://meowni.ca/posts/keypress-is-bananas/>)

Author: Monica Dinculescu

Published: 2015-06-02T00:00:00Z

Content type: article

Language: en

Sources: [Monica Dinculescu](<https://devfeed.tech/sources/monica-dinculescu.md>)

Topics: [keyboard](<https://devfeed.tech/topics/keyboard.md>), [browsers](<https://devfeed.tech/topics/browsers.md>), [Chrome](<https://devfeed.tech/topics/chrome.md>), [Firefox](<https://devfeed.tech/topics/firefox.md>), [deprecated](<https://devfeed.tech/topics/deprecated.md>)

Tags: [browsers](<https://devfeed.tech/tags/browsers.md>), [chrome](<https://devfeed.tech/tags/chrome.md>), [code](<https://devfeed.tech/tags/code.md>), [deprecated](<https://devfeed.tech/tags/deprecated.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>)

### AI overview

This article examines inconsistent keypress event behavior across browsers. Chrome, Safari, and IE10 emit keypress for printable characters, while Firefox 38 emits it for all typed input. It also discusses differences and deprecation involving keyCode, charCode, and key.

### Source excerpt

The keypress event works maddeningly differently in Chrome/Safari and Firefox, and this is the story of how I spent two hours discovering that, so that hopefully you don't have to. Keypress what? A keypress event is one of the events you get when you mash on the keyboard. It's special because according to the spec, you should only get a keypress event for keystrokes that produce printable characters. So you'll get it for things like letters and symbols, but not for backspace and left arrow. It's a great event to have if you want to write some as-you-type validation on an input, and you want to be able to dismiss the non-printable characters (which will still generate key events, but are uninteresting to the validation bit). Chrome, Safari and IE10 agree with this interpretation, which is great news. To be contrarian, Firefox (38; I don't know about Aurora) always sends a keypress event for anything you type. It's basically a keydown event from what I see. Now you have to get rid of control characters yourself and you get write code that doesn't make sense on the other platforms! Yay! (not yay) I call shenanigans. Mind your keyCodes and charCodes From looking at the spec, we expect a keypress event to have: keyCode, a number code that represents the key you've pressed. For example, q is 113. This is allegedly deprecated, but don't worry, both Firefox and Chrome implement it, but differently. charCode, the unicode number of the key. This code only exists for keypress. Like before, it's deprecated, but like before, it's implemented by both browsers. Differently. key, the value of the key represented by the event. According to that spec, this one is unimplemented. Worry not, Firefox implements it just fine (Chrome doesn't). It is the hero we deserve, but not the one we get right now. 😭 What you get out of this is spectacularly annoying. I wrote some code that basically prints out what the keypress event looks like, and found: As promised, in Chrome/Safari/IE10, we only

## Developing on Linux

DevFeed: [Developing on Linux](<https://devfeed.tech/articles/developing-on-linux-35610.md>)

Original publisher: [Read original article](<https://zolmeister.com/2014/09/developing-on-linux.html>)

Author: Zoli Kahan

Published: 2014-09-13T05:00:00Z

Content type: opinion

Language: en

Sources: [Zolmeister](<https://devfeed.tech/sources/zolmeister.md>)

Topics: [Linux](<https://devfeed.tech/topics/linux.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Development](<https://devfeed.tech/topics/development.md>), [dotfiles](<https://devfeed.tech/topics/dotfiles.md>), [Shell](<https://devfeed.tech/topics/shell.md>), [Atom](<https://devfeed.tech/topics/atom.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [Nvidia](<https://devfeed.tech/topics/nvidia.md>), [GPU](<https://devfeed.tech/topics/gpu.md>)

Tags: [4k](<https://devfeed.tech/tags/4k.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [editor](<https://devfeed.tech/tags/editor.md>), [git](<https://devfeed.tech/tags/git.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [keyboard-shortcuts](<https://devfeed.tech/tags/keyboard-shortcuts.md>), [linux](<https://devfeed.tech/tags/linux.md>), [nvidia](<https://devfeed.tech/tags/nvidia.md>), [oh-my-zsh](<https://devfeed.tech/tags/oh-my-zsh.md>), [zsh](<https://devfeed.tech/tags/zsh.md>)

### AI overview

A personal account of a Linux development setup covering the i3 tiling window manager, ZSH with oh-my-zsh and Powerline, Atom as an open-source editor, and desktop hardware requirements.

### Source excerpt

Developing on Linux dotfiles i3 - Tiling Window Manager A tiling window manager is a type of window manager that arranges your windows as tiles, usually in such a way that makes managing them more efficient via keyboard shortcuts. i3 is my window manager of choice, after having used xmonad for a long time, i3 provides more flexibility and ease of configuration. Here is a great sceencast which will help you understand the power of tiling window managers.

## My setup: Hardware

DevFeed: [My setup: Hardware](<https://devfeed.tech/articles/my-setup-hardware-35260.md>)

Original publisher: [Read original article](<https://darkcoding.net/behaviour/my-setup-hardware/>)

Author: Graham King

Published: 2013-12-07T23:46:58Z

Content type: opinion

Language: en

Sources: [Graham King](<https://devfeed.tech/sources/graham-king.md>)

Topics: [Hardware](<https://devfeed.tech/topics/hardware.md>), [pc](<https://devfeed.tech/topics/pc.md>), [cpu](<https://devfeed.tech/topics/cpu.md>), [ASUS](<https://devfeed.tech/topics/asus.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Nvidia](<https://devfeed.tech/topics/nvidia.md>), [monitor](<https://devfeed.tech/topics/monitor.md>), [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Wi-Fi](<https://devfeed.tech/topics/wi-fi.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Ethernet](<https://devfeed.tech/topics/ethernet.md>), [webcam](<https://devfeed.tech/topics/webcam.md>)

Tags: [asus](<https://devfeed.tech/tags/asus.md>), [behaviour](<https://devfeed.tech/tags/behaviour.md>), [cpu](<https://devfeed.tech/tags/cpu.md>), [desktop](<https://devfeed.tech/tags/desktop.md>), [dual-screen](<https://devfeed.tech/tags/dual-screen.md>), [ethernet](<https://devfeed.tech/tags/ethernet.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [linux](<https://devfeed.tech/tags/linux.md>), [monitor](<https://devfeed.tech/tags/monitor.md>), [nvidia](<https://devfeed.tech/tags/nvidia.md>), [setup](<https://devfeed.tech/tags/setup.md>), [video](<https://devfeed.tech/tags/video.md>)

### AI overview

A programmer describes a personal hardware and office setup, including desks, an Aeron chair, dual ASUS monitors, a desktop PC, an SSD, Linux-compatible graphics hardware, networking equipment, audio devices, a webcam, and input devices.

### Source excerpt

"Geek chic: A witty tour of one programmer's hardware setup."

## Kinesis Advantage after four months

DevFeed: [Kinesis Advantage after four months](<https://devfeed.tech/articles/kinesis-advantage-after-four-months-35429.md>)

Original publisher: [Read original article](<https://darkcoding.net/software/kinesis-advantage-after-four-months/>)

Author: Graham King

Published: 2013-12-07T22:58:09Z

Content type: opinion

Language: en

Sources: [Graham King](<https://devfeed.tech/sources/graham-king.md>)

Topics: [keyboard](<https://devfeed.tech/topics/keyboard.md>), [Microsoft](<https://devfeed.tech/topics/microsoft.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Vim](<https://devfeed.tech/topics/vim.md>), [USB](<https://devfeed.tech/topics/usb.md>)

Tags: [keyboard](<https://devfeed.tech/tags/keyboard.md>), [kinesis](<https://devfeed.tech/tags/kinesis.md>), [linux](<https://devfeed.tech/tags/linux.md>), [microsoft](<https://devfeed.tech/tags/microsoft.md>), [software](<https://devfeed.tech/tags/software.md>), [usb](<https://devfeed.tech/tags/usb.md>), [vim](<https://devfeed.tech/tags/vim.md>)

### AI overview

The author reviews four months of using a Kinesis Advantage keyboard after years with Microsoft Natural keyboards. The transition was difficult for the first three days, but typing became faster and more comfortable by the end of the first week. The author also discusses its compact size, use across desktop and laptop setups, and configuration for Linux, Vim, and tmux.

### Source excerpt

A keyboard love story: still typing after all these years.