Author: manningmicah@gmail.com

  • Enlightenment may not be what you think!

    Today, I am exploring the idea of enlightenment as a lightening of mental load through experience, study, and cross-training.

    First let’s dig into where this comes from, for me. I have three major guiding principles that inform my actions from moment to moment.

    1. Seek Enlightenment: Evaluate whether this knowledge or effort makes future endeavors easier.
    2. Fear is a tool: Recognize fear in myself as a mechanism that guides me away from failure.
    3. Don’t sweat the small stuff: Embrace life as it comes and learn how to dance with it.

    I try my best to apply these three principles to things that I feel may be keeping me from what I want out of life.

    Seeking Enlightenment…

    With Guidance

    This journey began with difficulty but built over time, came to represent the core of my education, or in other words how I learned to learn. My mother played a crucial role in my enlightenment. Before ADD and ADHD were widely studied. She taught me at a very early age that I had a “jazz” type of mind, and that the music may take off onto solos from time to time, but that I could always find a way to bring it back and contribute to the melody. Jazz, when let run free without any training can easily get out of hand, but a little music theory and exposure can teach you how to find the hooks that keep it cohesive. Before college, she introduced me to Gregg Shorthand, which transformed my note-taking speed. Subsequently, my mother-in-law introduced me to speed reading from an original set of Evelyn Woods tapes, enabling me to tackle multiple chapters of textbooks in a single evening. Speed became my friend and saving grace. While I couldn’t retain all the information in one go of course, the ability to engage with lecture concepts each week was invaluable, enhancing long-term retention through repeated exposure.

    Through Experience

    Returning to the “enlightenment” idea, I use it as a centering mantra now. My key strategy in school was leveraging my long-term memory. The counterpoint to that is that I might forget what you just said 30 seconds ago. Armed with that understanding of myself, I realized quickly that class time would be wasted if I wasn’t prepared to learn on my terms. So, “seeking enlightenment”, for me, evolved into a need for rapidly filling experience and knowledge gaps. My ability to memorize concepts and organically build on them became my “cheat,” making schooling the big test or experiment, that I used to hone the skill of seeking enlightenment.

    Through Study

    Enlightenment is classically defined as:

    • A state of awakened understanding, transcending suffering, and desire for spiritual liberation.
    • An 18th-century philosophical, religious, artistic, and political movement rejecting traditional ideals and emphasizing rationalism.

    I aim to maintain a personal perspective, something between the deeply meditative and the politically charged growing pains of society. On the meditative side, Personal reflection whether through silent moments or journaling, mindfully connects us with our purpose. Philosophically, external reasoning also has its merits. Yet, the challenge lies in finding a balance that aligns with one’s internal values. Not to mention the want or drive to do these things. Lack of motivation is the killer of all momentum.

    Now that all said, I by no means think that I have it all figured out, but I do have a way to ensure that I am getting the most out of my effort, no matter what I am doing at the time. Being able to reflect on the things I do, and have done, helps me to lighten my load for the next time. In my work and hobbies, I try to automate as much as possible. If I have to perform the same task more than twice I take time to see if it can be automated or a better process applied. Even if it’s just parts of a task through templates, jigs, scripts, process definition, or muscle memory. All of these things can work together to make tasks run smoother and more reliably.

    That at times can manifest as a poor choice, if my automation is flawed then the task it does is flawed in the same measure every time. That’s fixable but not a non-issue. In the beginning, I dedicated a lot of time to automation and my daily efforts suffered for a bit, that was a minor setback in the long run and ended up being a net gain in the end, but it was still something worth paying attention to.

    Through Cross-training

    Finding the connection between my work and my hobbies helps to solidify some of the concepts or shine a light on them from a new perspective. I am a fan of strategic games that require a lot of forethought and am not so great at tactical adjustment in certain scenarios. I try to do things outside of work that are seemingly unrelated but try to find the overlapping concepts that make me better at both. For example, painting takes patience, consideration, and a certain level of acceptance of imperfection, just like managing people.

    Conclusion

    To bring it all home, I think my definition of enlightenment boils down to the lightening of one’s mental load. The less I think about doing a thing the more smoothly it gets done. This may include a few older familiar concepts we have all probably heard in our lives at one point or another:

    1. Practice makes perfect
    2. Walk before you run
    3. Work smarter, not harder
    4. You’ll get faster with experience
    5. Use tools that make the work easier
    6. Time is money
    7. Idle hands are the devil’s playground

    Each of these may have a different connotation but ultimately they all push toward the same direction and outcome. I have just tried to condense them into one quick reminder I can say to myself if I feel I am wasting time or effort on anything.


    This is a separate series from my usual Accessibility content, and I will be sharing more from time to time, providing insights into me, my process, and my motivations. Let me know what you think or challenge my perspective. Let’s talk about it.

    This post was refined with the help of OpenAI. (2023). ChatGPT [Large language model]. https://chat.openai.com

  • The Havok of Dangling Participles

    As I spoke of in my last post, I try not to fall into the trap of dangling participles. Though I am sure that I do occasionally. Accessibility concerns itself with cognitive load as well as direct access issues. If someone in need cannot understand our directions then it falls on us to better explain and do so in greater detail. Some dangling participles are deceptively coherent sounding. I suppose there is some merit in accepting that as long as the message is delivered satisfactorily and matches the perspective you are trying to invoke, then “no harm, no foul” tends to kick in. That said, it’s a slippery slope to letting your guard down when it matters. I will offer up a few examples to show how we can lose meaning or present multiple ideas in one sentence, and allow for unwanted bias to ruin our sentence.

    1. The obvious one

    Example: Running down the street, the flowers looked beautiful.

    Intent: To say that while we were running down the street we saw some beautiful flowers.

    Result: The flowers looked beautiful running down the street.

    Adjustment: Running down the street, I saw that the flowers looked beautiful.

    Avoidance: I saw some beautiful flowers while running down the street.

    I hope to impart that avoidance is the better and more concise option. It is nearly the same length as the original and does not suffer the same confusion of seeing a bouquet jogging itself down the street. Now this is an extreme example to illustrate the point so let’s get a little more ambiguous in the next example.

    2. The understandable near miss

    Example: Typing on the computer, the document was finished.

    Intent: We were typing on the computer and finished the document we were working on.

    Result: The document itself was done typing on the computer.

    Adjustment: Typing on the computer, I finished the document.

    Avoidance: I finished typing the document on the computer.

    Again, here you can easily see what we were attempting to say and would most likely give a pass and keep on reading the paragraph that follows. You might judge, but you understand the intended meaning and resolve to get on with your day. We could choose to adjust and finish with a full sentence, or as noted before we could choose the path of avoidance. Avoidance keeps the sentence concise, remains properly associated, and lowers the cognitive load on the reader. three wins for the price of one.

    3. Let’s get more topical and ambiguous

    1. When the date is being filled, the format must be correct.
    2. While reviewing the form, any errors should be corrected.
    3. Upon submitting the form, confirmation will be sent.

    I want you to take a moment and slow down here. I also suffer from reading too quickly and must remind myself to take a beat. I am changing up the format here a bit to maybe help with that. I have offered up here, 3 participles dangling. I would like you to think about how they might be better arranged. and go through the steps I did above. Let’s look at intent, the potential resulting confusion, any adjustment we might be able to make, and finally an attempt at avoidance.

    Here’s a bit of a rubric to follow, throw it in a notepad or your own choice of writing application, or heck even jump down into the comments if you are feeling froggy and let everyone know what you think the best solution is.

    Example:

    Intent:

    Result:

    Adjustment:

    Avoidance:

    Now all of these are mostly readable as long as you have plenty of surrounding context to go along with them. Once you have given it some thought move on to the next section.

    4. Discussion

    For the first one, it’s safe to assume that we just want the correct format for the date, but we could be more explicit. Which format should the date be in, US or European standard? It’s also odd to think of it being while the field is filled out and not after it’s completed. Just feels off, right? Now we could say “The date should be filled out with the US standard format. (mm/dd/yyyy)” in the error message. It is clear, concise, and offers an example most users are familiar with.

    For the second one, the missing info is the who. Does this sentence mean:

    A). That the user should take care to fill out the form correctly and check for any mistakes in a quick review session before submitting

    B). That the form will be reviewed for them and and corrections should be made on their behalf.

    C). The computer should update anything it finds as an error before allowing you to submit.

    If you are a user that thinks there is going to be a final review session built into the workflow then you may not take as much care as you need to. So we need to be clear that it is their duty to review the contents of the form before sending it in.

    For the third one, we are missing a where piece of context.

    Will the confirmation be sent back out to the user or the system administrator? they most likely will expect a confirmation to be showing up in their email with a tracking number. We should provide clarity here. When you submit the form, you will receive a confirmation email.

    It may not seem like much, but avoiding confusion can be very difficult, and having someone proofread is a huge step toward seeing how the reader will most likely understand what you are trying to say. Look out for dangling participles (and poor wandering lost commas) they can cause not only misunderstanding but confidence in that misunderstanding that may lead you to more trouble in the end.

    5. Concluding

    Wrapping this all back to accessibility is the ultimate concern for each of my articles. So, on that note, one of the goals of accessibility is to lower the cognitive load for users who need to use the services being provided. Dangling participles usually suffer from a simple lack of context and need a bit more clarity to confirm their intent. They sometimes work just fine in a train of thought speech pattern, because they are usually indicative of a pause to think through and continue to build on the ample context that lead up to that moment. When trying to be succinct and as direct as possible when giving directions, we must remember to speak plainly and with adequate detail. Now go forth, and hunt for participles that dangle unnecessarily.

  • The Single Dimension Struggle

    Accessibility and the Single Dimension:

    In the vast expanse of the internet’s visual marvels, one dimension often eludes mainstream attention—the experience of users relying on screen readers. Imagine a web page as a dynamic mosaic, thoughtfully crafted with hierarchical lists, grids, and visually appealing designs. Now, envision reducing this immersive experience to a single sentence structure—a linear journey guided solely by the screen reader’s robotic voice sans capacity for inflection. Users with visual impairments face the profound challenge of navigating the web in this singular dimension, and it underscores the paramount need for designers and developers to be aware of how that condensing of concepts modifies or transforms their work.

    Linear Limitations:

    For users depending on screen readers, the digital realm transforms into a linear narrative dictated by the sequence in which content is presented. What might be a visually intuitive and structured webpage for sighted users becomes a series of verbal cues for those relying on assistive technologies. This linearity imposes a significant challenge, especially when dealing with complex content that designers and developers originally expected to be consumed by the user in a multidimensional way.

    Hierarchies Fall Flat:

    Intricate menu structures, detailed data tables, or visually striking infographics—elements meticulously designed to convey information with nuance—are often reduced to a linear string of sentences when processed through a screen reader. The inherent structure and visual hierarchy that sighted users effortlessly navigate becomes a sequential flow of words, demanding careful consideration from developers to ensure that the essence of the content and its context is preserved.

    Crushed Complexity:

    Let’s return to the idea of a webpage with a sophisticated layout, presenting diverse information through images, charts, and interactive elements. For a user reliant on a screen reader, this intricate canvas transforms into a one-dimensional corridor where the richness of content must be distilled into clear, concise, and understandable verbal descriptions. Teams face the challenge of preserving the substance and context of each element within this constrained format and that is no trivial task. Finding out how to make sure that your creation does not merely get reduced to a pile of mixed-up words warrants a full round of thoughtfulness. In the same way that those teams build designs from sentences into workable functionality, they must also retain the ability to return to such simplicity through their code.

    Precision of Navigation:

    In this single-dimensional landscape, the user’s ability to navigate efficiently becomes paramount. What may have been a swift exploration through visual cues for sighted users becomes a meticulous journey for those relying on screen readers. Developers must ensure that linear navigation is not simply possible, but also offers meaningful waypoints, allowing users to grasp the relationships between different pieces of content and easily retrace their steps to reliably be able to find the information that they need.

    Empathy in Design:

    Recognizing the single-dimension struggle necessitates a shift in perspective—a call for empathy in design. Developers must transcend the visual aesthetics of their creations and envision the auditory landscape experienced by users with visual impairments. This understanding becomes the cornerstone for crafting digital spaces that offer an enriching, navigable experience even in this singular dimension.

    In confronting the single-dimension struggle, developers embark on a journey of reimagining digital spaces, actively ensuring that inclusivity is not just a checkbox but a conscious effort to make the web universally accessible, productive, valuable, and enjoyable for all.


    As we begin our exploration of the challenges faced by users relying on screen readers and the imperative of digital accessibility, it’s clear that there is more work to be done. In the forthcoming articles, I plan to delve into technical details and focus on specific solutions to address the intricacies of this problem as it applies to various components typically found in modern web design.

    1. Language and Grammar: I will begin with language and grammar—something I struggle with, more on that later—It’s easy to overlook the value of editing, peer-reviewing, and tech writing all of your work and not just your deliverable documents. I am going to change the tone here a bit, please bear with me. I plan to delve deeper into something we were all taught in school and many of us never think of again, the dangling participle or modifier. When a robotic voice incapable of inflection is reading out a sentence, you may inadvertently be telling someone to do the exact opposite of what you intend. We have all gotten aggravated at having to “spell it out” for someone who just can not seem to get it. That is 100% our problem to solve, not theirs. Now, back to our regularly scheduled tone.

    2. Semantic HTML and Its Power: One key area of focus will be the use of semantic HTML. I’ll explore how thoughtful markup can serve as the cornerstone of an inclusive design, offering those users who rely on screen readers a clear and meaningful structure to navigate through content seamlessly.

    3. ARIA Roles Unveiled: Another technical aspect that deserves attention is the implementation of Accessible Rich Internet Applications (ARIA) roles. I’ll dive into how developers can leverage ARIA to enhance the interactivity of their web applications, ensuring that dynamic elements are not just visually engaging but also accessible to users with disabilities.

    4. Practical Tips for Inclusive Design: Building on these technical discussions, I’ll provide practical tips for inclusive design. This will involve dissecting real-world examples and demonstrating how developers can make specific elements, such as menus, data tables, and interactive components, more accessible to users relying on screen readers.

    5. Navigational Best Practices: Efficient navigation is a cornerstone of a positive user experience for screen reader users. I’ll explore best practices for ensuring that websites offer not only content accessibility but also intuitive navigation, allowing users to move seamlessly through the one-dimensional landscape.

    6. Future Trends in Web Accessibility: Looking ahead, I’ll examine emerging trends and technologies in the realm of web accessibility. From advancements in assistive technologies to evolving standards and guidelines, understanding the future landscape will be crucial for developers committed to creating digital spaces that stand the test of time.

    By delving into these technical nuances and providing practical solutions, I aim to equip developers with the knowledge and tools needed to create not just accessible, but truly inclusive digital experiences. Together, we can foster a web environment where everyone, regardless of their abilities, can engage with content in a meaningful and enjoyable way. Stay tuned for my upcoming series on this perspective, where we’ll journey into the details of making the web more accessible for all.

  • And Then It Hit Me… “Iterations On A Theme”

    Some time ago, I had an epiphany about our pursuit of perfection in software engineering and development, which led me to contemplate it as “iterations on a theme” - a concept I’ll delve into later. First, let us define Iteration.

    Iteration, in essence, involves refining a given concept or solution step by step. More precisely, it’s the repetition of a mathematical or computational procedure applied to the result of a previous application, often used to approach a problem’s solution incrementally.

    In music, composers embrace a kindred concept known as “variations on a theme.” Renowned figures like Haydn, Paganini, Corelli, Chopin, and Handel, among others, have compositions labeled as “variations on a theme” or simply “variations”. These pieces not only showcase their mastery but also serve as studies of theme and style. In the modern era, young artists employ variations to deepen their understanding of their craft and showcase their skills.

    Some of my favorite modern musicians are masters of taking a known piece and setting it to a style that may seem like a juxtaposition. Others, I like because they are composing or arranging so that they can pull from various styles into a similar theme while sounding authentic to the root works. Mashup artists also employ some of these pursuits to make two seemingly disparate somes into one harmonious piece to the delight of blind reaction posters everywhere.

    This brings me to my central point: the idea of “variations on a theme” is highly applicable to the realm of software development.

    • The Iterative Approach:

    Just as composers meticulously refine melodies to create musical masterpieces, developers adopt an iterative approach to continuously refine and enhance their applications. This method involves a series of incremental improvements, addressing issues, and incorporating user feedback. The iterative approach allows developers to respond to changing requirements, striving for a product that approaches perfection with each cycle. It’s a journey marked by continuous learning and adaptation, much like a composer refining a melody to achieve artistic excellence.

    • Coding the Same Project in Many Languages:

    Similar to the way musicians explore variations on a musical theme, developers broaden their skills by coding the same project in multiple programming languages. Each language introduces a unique set of challenges and opportunities, akin to different musical styles. Just as a composer might experiment with variations to evoke specific emotions, developers, by embracing multiple languages, expand their toolkit. This practice not only enhances their adaptability but also deepens their understanding of the intricacies involved in crafting robust and versatile solutions.

    • Design Sessions Incorporating Various Disciplines:

    In the same way that composers draw inspiration from various disciplines to create variations on a theme, collaborative design sessions in software development thrive on incorporating diverse perspectives. Bringing together individuals with expertise in different disciplines—such as user experience, graphic design, and system architecture—enriches the creative process. The result is innovative solutions that seamlessly blend various disciplines, much like the harmonious integration of different elements in a composition.

    • Refactoring the Codebase:

    Just as a composer revisits and refines a musical theme to achieve perfection, developers engage in the process of refactoring to enhance the efficiency and maintainability of their codebase. Refactoring involves restructuring code without altering its external behavior, similar to refining a musical composition without changing its fundamental melody. This iterative refinement ensures that the code remains adaptable, scalable, and aligned with evolving best practices, contributing to a more resilient and sustainable software architecture.

    • The Software Development Lifecycle:

    The repetitive cycle of pull, branch, push, pull request, and merge in version control systems mirrors the iterative nature of music composition. Just as a composer revisits and adjusts musical elements to achieve harmony, developers continually collaborate and refine their work in this cyclical process. Each iteration represents a step forward, incorporating new features, fixing issues, and maintaining a cohesive and evolving codebase. This structured and repetitive cycle is fundamental to the collaborative and iterative nature of the software development lifecycle.

    The individuals who excel at these practices often become go-to resources for help. While they may not always hold the title of senior developers, their body of work represents their “variations on a theme.” They possess a unique perspective shaped by numerous iterations, recognizing imperfections not only in others’ work but crucially in their own. This body of work serves as a robust proof of their iterative journey toward perfection.

    Consider Edison’s famous quote about finding numerous ways not to make a lightbulb. (of which many versions abound. I’ll leave it up to you to find the most correct one.) Emphasizing an iterative approach unconcerned with failure but driven by the pursuit of a perfect solution. Although Edison’s envisioned ideal may pale in comparison to today’s achievements, his relentless pursuit paved the way for revolutionary advancements.

    In the world of software development, we’re striving for a level of perfection we might never fully witness, and that’s perfectly okay.

  • A11y Checklist Update – Hello

    I hope that this, one day, means as much to the world as I think it does to me. I endeavor to make the world a bit brighter for those that light is a dream.

    A lofty goal I know, and I don’t mean to wax poetic. I simply have had the honor of meeting some wonderful people in my career and am proud to serve my purpose.

Verified by MonsterInsights