Category: Translation

  • Adaptive planning

    Adaptive planning

    For a healthy work-life balance as a freelancer, I’ve adopted a more flexible work schedule over the past six to seven months.


    Instead of working a strict 9-to-5—which limited my freedom to engage in other essential activities—I’ve gradually implemented a much more supple schedule. This doesn’t mean I work less; I put in the same number of hours, but with better quality in both my work and my life.


    I made the decision to become more flexible with my working hours because there are other activities—socializing, cooking, fishing, praying at the mosque, reading ebooks—that are essential to my growth on both a personal and professional level.


    In truth, a rigid plan led to more stress, a lower quality of life, and limited social connections. In other words, my quality of life suffered.


    After six months of adapting this more flexible schedule, I can clearly see the difference: I’m more relaxed, and I enjoy both my life and my work much more. I engage in a wider variety of activities and avoid the tunnel vision that comes with hyperfocusing on work productivity and sports.


    Unfortunately, that hyperfocus proved counterproductive—it left me stressed at work and dealing with overuse injuries.
    Looking at the long term, adopting a “consistency over intensity” approach is much wiser.

    Even though I’m capable of maintaining intensity for years, doing so means ignoring other important aspects of life.

    This concept is captured beautifully in Japanese culture by the term Shokunin—a deep commitment to one’s craft, but also to community and self. Shokunin embodies a philosophy of lifelong learning and humility.

    Adaptive Planning in Practice


    I use the Planify app to organize my work and create a funnel for both my personal and professional projects. I also silence all notifications on my smartphone and avoid answering emails during deep work sessions.


    I limit myself to reading only two ebooks at a time: one for focused work-related training, and one for general culture.


    Instead of time blocking, I use theme days. Rather than scheduling every hour of my day, I dedicate entire days to specific types of work—like client projects, admin tasks, or deep learning.

    This gives me the flexibility to work when I’m most productive while ensuring important categories don’t get neglected. Theme days reduce the mental friction of constantly switching between completely different types of tasks throughout a single day.


    I maintain a backlog for my pending projects. My backlog serves as a holding pen for every idea, task, and project that crosses my mind, keeping them organized and visible without cluttering my immediate focus.

    During my weekly reviews, I pull items from this backlog into active work, ensuring nothing falls through the cracks while maintaining control over my workload. This system gives me confidence that I’m not forgetting anything, even when I’m fully immersed in client work or taking time for fishing and prayer.


    Paid projects always take priority. I pause all training and open source contributions until I finish paying work. This is essential because I may receive several freelance gigs in quick succession. If I’m contributing to FOSS projects at the same time, I might either turn down paid work or risk missing deadlines. Context switching has a cost—for this reason, I also batch similar tasks together.


    Adaptive planning is also about managing energy, not just time. This approach supports sustainable, high-quality work and a better quality of life overall. For example, when I take on a large, complex project and work intensively for weeks, I give myself a few days of rest afterward. I do the same even after a small but energy draining project.


    This only works if I trust myself to complete work in the right time, rather than a prescribed time. Since shifting to this philosophy, I’ve delivered every project on time, earned promotions to senior roles, and attracted more clients.

    How I Did This?


    I studied books on Personal Knowledge Management (PKM) and implemented weekly, monthly, and yearly reviews. I’ve also been taking consistent notes. This practice supports metacognition and helps me organize both my life and my work.


    Rather than following the “10,000 hours” rule for mastery, I’ve embraced the “10,000 experiments” rule for life design. Every adjustment I make—reading only two books, pausing FOSS work during client projects, scheduling time for fishing—is an experiment. I observe the results, learn, and iterate. Adaptive planning is a mindset of continuous experimentation, not a fixed system.


    This approach will help me evolve not just as a professional, but as a person.

  • Documenting my i10n FOSS contribution and beyond

    Documenting my i10n FOSS contribution and beyond

    I quite happy that I grew from a translation editor and PTE to Arabic GTE and language manager in the WordPress ecosystem. I have been working hard as a translation contributor for the Arabic locale for around 1 year. When I applied the Arabic language team was semi-dormant, nearly all my l10n contributions were not validated, fortunately my request to be a GTE was accepted.

    I am enjoying the experience as I have in fact been happy to see that some managers whether in the polyglot team or core-test team are particularly active and helpful. They are responsive and even get in touch with me during the weekend, they rekindled my enthusiasm for FOSS and WordPress. These managers are also mentors and guiding me towards a more impactful contributions.

    How I became a GTE

    First of all I take my FOSS contribution seriously, even though it is volunteer work, I offer the best work possible and I keep fine tuning my l10n process.

    I have been building and maintaining a glossary for WordPress terminology. Moreover, improved my workflow using AI as well. This sped up my l10n work.

    You can see my GTE request in the following link here

    And my simple tip to speed up l10n task on WordPress.

    Working on automation and scripting


    I studied and working on regex and grep for this purpose.

    This basic command finds all uses of WordPress translation functions, to find any i18n issue:

    grep -r "__|_e|_x|_ex|_n|_nx" . --include=*.php --exclude-dir={vendor,node_modules,.git}

    This essential command detects hardcoded strings output via echo that should likely be translatable:

    grep -rn "echo\s['\"][^'\";][a-zA-Z]" . --include=*.php --exclude-dir={vendor,node_modules,.git} > i18n_issues.txt


    This will create a .txt file with potential i18n issues with the name of the file and line of the hardcoded strings. It will display the lines of the detected potential issues.

    Using VScode task

    First we should change this:

    grep -rn "echo\s['\"][^'\";][a-zA-Z]" . --include=*.php --exclude-dir={vendor,node_modules,.git} > i18n_issues.txt

    to this:

    grep -rn \"echo\s['\\"][^'\\";][a-zA-Z]\" . --include=*.php --exclude-dir=vendor --exclude-dir=node_modules --exclude-dir=.git > i18nvs_issues.txt

    As:
    You must escape the inner double quotes with backslashes so JSON treats them as part of the command, not the end of the command.

    However, the “Best Practice” Fix (Using Args)
    VS Code tasks work best when you separate the command from its arguments. This prevents “Quote Hell” and is much more reliable across different operating systems.

    {
        "version": "2.0.0",
        "tasks": [
            {
                "label": "Audit i18n",
                "type": "shell",
                "command": "grep",
                "args": [
                    "-rn",
                    "\"echo\\\\s*['\\\"][^'\\\";]*[a-zA-Z]\"",
                    ".",
                    "--include=*.php",
                    "--exclude-dir=vendor",
                    "--exclude-dir=node_modules",
                    "--exclude-dir=.git",
                    "|",
                    "tee",
                    "i18vsc02_issues.txt"
                ],
                "presentation": {
                    "reveal": "always",
                    "panel": "new"
                },
                "problemMatcher": []
            }
        ]
    }
    


    We could get deeper with automation adding the following:

    wp i18n make-pot []

    This commands scans the project files (.php, .js etc) for translatable strings and generate a .pot file.

    The PHP linting command:

    find -name '*.php' -type f -exec -l '{}' \;

    As used in wpvip an Automattic project.

    A PHP online book


    As recommended by a wp core-test team manager I read PHP: the right way online book. It is not a a long ebook, it is 100% free and always updated.

    I use koofr browser extension to save important text, even take screenshots and revise and check later. This extension is useful to bookmark your progress in you are reading a long text or a book as mentioned above.

    WordPress courses

    Just less than 2 months ago I discovered there are free online WP courses on an official WP subdomain. I was glad and I finished 3 courses and working on finishing a 4th course.

    The courses I finish get displayed on my profile as you can see here:

    Conclusion

    Learning essential grep, bash, php, and taking WordPress courses is a fun and a nurturing experience. However, when contributing to core-test I understood that what I lack the most is a knowledge about the architecture of WP and deep technical knowledge related to WP.

    WP is made of many projects and components, there are even components maintainer who have specialized knowledge and skills about one or two components only.

    As they say start small grow big, I will keep doing what I started and get more knowledge about FSE such as block, patterns… reading official documentations and experimenting.



  • Career Development and Personal Growth: 2025–2026

    Career Development and Personal Growth: 2025–2026

    A quick summary of work highlights 2025:


    – Contributed regularly to WordPress test-core

    – Contributed regularly to l10n from English to Arabic and a couple of projects from English to French

    – Streamlined and optimized my l10n work especially when related to software. Learned basic SED and Gettext.

    – Earned a few extra WordPress badges
    – Obtained three l10n certificates from Lokalise

    2026 career objectives:

    – Continue my contributions to WordPress l10n & test core

    – Finish WordPress lessons, at https://learn.wordpress.org/, that aligns with my objectives

    – Learn and study more PHP, JS and WordPress codebase

    – Advance my SED, gettext skills and learn new tools.

    – Advance my Bash skills to create scripts that automate Gnu/Linux OS maintenance and back ups

    Personal projects for 2026

    – Keep using the bicycle as my means of transportation and to exercise as well

    – Doing regular strengthening exercises to become fitter

    – Learn more healthy recipes

    – Go to the beach more often to fish, and learn more fishing techniques

    – Read non-fiction ebooks on the weekends

    – Blog more often

    Conclusion

    The 2026 goals represent the continuation of my past projects, which require maintenance and upgrades.

    It is worth noting that I’m committed to strategic planning with the agility to pivot as needed these goals provide direction but allow for course correction.


    Bonus: Early Morning Fishing Adventures Image.
    One of my favorite ways to spend time outdoors—early morning fishing trips. These quiet moments before sunrise are where I practice patience and learn new fishing techniques.

    Picture taken at sunrise, November 2025

  • Late 2025 Update: My Localization Work and Key Tips for Aspiring Linguists

    Late 2025 Update: My Localization Work and Key Tips for Aspiring Linguists

    Starting from January 2025, I contributed regularly to many FOSS projects as a localization specialist.

    I translated the whole AppFlowy app into Arabic and reported many language issues on GitHub related to its documentation.

    Besides, I worked extensively on many WordPress plugins and themes. I enjoyed it and gained more hands-on experience by becoming faster and more precise.


    Main tips to build a successful career as a linguist/l10n specialist

    I already work with multiple translation companies in life sciences as a master reviewer and language validator consultant, which is considered a respectable position in the language industry. In theory, it is not that complicated to become top-rated and be a master reviewer or an LVC (language validator consultant).

    • In your free time, read books and articles about your niche as a language professional.
    • Listen to podcasts in the languages you use.
    • When expanding your knowledge in your free time, look up technical words you encounter. This is essential if you want to be efficient when you do paid work. As they say, “If you fail to prepare, prepare to fail.”
    • Review your work multiple times even if it takes 20–30% more time. This will help you find patterns in your common inaccuracies; as a consequence, you will do a better job in the future and become faster.
    • Write comments and take notes when working on a language project. Try to go the extra mile; I even review the English source text for typos and punctuation issues and report them to the project manager or direct client.
    • Even if some projects are financially very rewarding, but you do not have time to deliver high-quality work, do not accept the job. You will hurt your client, damage your reputation, and may even be blacklisted. Always remember that clients pay you to help them deliver great work, so you should care about their success.
    • Be responsive and answer quickly to email requests—preferably within 20 minutes. If you are out of the office, be sure to have a 4G or 5G connection on your smartphone and check email or Slack notifications.
    • Use a timer to measure how much time is needed for each type of project. Assess the complexity of potential projects by scanning the documents and seeing how many complicated words appear per page. These difficult words will require extra time to translate accurately. If you keep doing this, after a couple of years you will know with great precision the time needed for each project.

    Other possibilities for growth as a linguist

    Take your time to write a detailed LinkedIn profile and create a short video to introduce yourself, as visitors often find it easier to watch a 1–2 minute video.

    Have a professional website and email. Avoid using Gmail, Yahoo, or Hotmail addresses, and take your time to use online tools to build a respectable email signature.

    Avoid having a Facebook account that could hurt your reputation as a freelance translator/linguist. In fact, most recruiters do a quick internet search and check your social media profiles to get an idea about who you are.

    Finally, it is worth noting that deliberate practice is key if you want to be more efficient, gain experience, and make more money.

    I mean, when you do volunteer or paid work, always think:

    • How can I make fewer mistakes and be more accurate?
    • Are there other software tools I can use?
    • How can I grow as a faster freelancer and be more accurate?
    • How can I advance my research skills?
    • How can I find more clients?
    • Can I add another specialism?
    • Are there tools that make generating and organizing invoices faster and hassle-free? (I personally use WaveApps.)
    • In my free time, is it a good idea to learn the basics of open-source, free CAT tools like OmegaT, for example? A one- to two-hour basic training on OmegaT may land you a USD 1,000 project and help you acquire new clients with recurring projects. Moreover, keep your professional profile on your résumé, LinkedIn, or website updated with the new tools or skills you learn, as some clients will only contact you if they are sure you know OmegaT. In short, if you learned how to use OmegaT but did not update your profile, it is self-sabotage.

    Let me know if you found ideas that were helpful in this blog post, you can also share your tips with us on a comment

  • Gaining practical knowledge while experimenting

    Gaining practical knowledge while experimenting

    Things are working as planned as I have noted before in this previous post that I spend much time reading and I was more of a theoretical person then practical. I described myself as a professional student to some extent.

    In my free-time, I contribute to open-source projects on WordPress.org and outside the WordPress ecosystem as well. I have established a new online business, lucidarabic.com, not staminacode.com, which is now defunct.

    This new online business focuses on providing various language services, however, I am pivoting to mainly focus on teaching Arabic language and adding content about Arabic culture.

    However, getting back to the growing more of a practical person this online business is teaching me new firsthand experience and reinforcing techniques and knowledge learnt from books.

    The new Lucid Arabic website, is gaining more visitors especially after about a year. I have created many Arabic vocabulary lessons and I published them. However, I have created more than 60 Arabic grammar practice exercises and around 30 Arabic grammar lessons as well, but did not publish these yet.


    Why not published yet?


    The Lucid Arabic site structure needs to change, such as a section for:

    – Vocabulary for beginners

    – Vocabulary for intermediates

    – Vocabulary for advanced

    – Grammar for beginners

    – Grammar for intermediates

    – Grammar for advanced

    For a well structured site that is easy to navigate and to build it in a SEO optimized way, there is some work that needs to be done to redirect the old vocabulary lessons. There are many plugins available for this purpose. The URLs of each sections should be well thought of.

    In regards to the quizzes and tests, I was pleased to find a 100% free and open-source plugin named H5P that I am using to create practice exercises. These exercises need to be linked to each section, vocabulary and grammar.

    Also, I’ve also thought about creating pronunciation audio recording. However, first and foremost, it’s more strategic to finish 50 grammar lessons at least and the related practice exercises.

    Growing as a localization specialist & developer

    Since, I am happy and grateful to find the H5P plugin which suits my needs, I have localized it to Arabic, this is my way to give back and thank the community for their contribution building and maintaining H5P.

    Furthermore, I am also tinkering and studying redirection plugins to grow as a WordPress plugin developer. For this, I use WordPress documentation, local server and various AI tools to better understand the plugin code.

    Conclusion

    Experimenting with a WordPress website to start a new business and to gain more knowledge is a nurturing experience, Google Analytics shows a growth on my site even though I only publish one lesson a week. Further, analysis of the data will support growing the traffic. Consequently, my plan creating high quality courses and tests looks promising. Finally, this goes hand in hand with gaining more technical programming skills in PHP and JS.