The Digital Dermatologist: Why Physicians Should Embrace Coding Skills in the Modern Era
In the ever-evolving landscape of healthcare, it’s no longer enough for physicians to be medical experts alone. The digital age has ushered in a new set of tools and challenges. We posit that a physician should not only be adept with a textbook and scalpel but also with a keyboard, particularly in the realm of coding. In addition, we hope to make the case that this is much less difficult than our readers may imagine.
Why Coding?
The increasing integration of technology in medicine, electronic health records, telemedicine, and even AI-driven diagnostic tools has created a scenario in which a basic understanding of software can be of immense value.1 Understanding the backbone of these digital tools can foster better utilization, customization, and troubleshooting. Moreover, the capability to develop simple tools can help a practice run more efficiently and cater to the unique needs of patients.
Dermatology, in particular, with its rapidly advancing imaging and teledermatology tools, stands to gain substantially from physicians who can navigate and potentially modify the digital landscape.2 An idea that may lower the barrier of entry for dermatologists is that they do not necessarily need to be software engineering experts. However, understanding how programming and novel technologies work can allow dermatologists to more accurately see the potential uses and limitations for these tools in the field. By bridging their clinical knowledge with even a superficial understanding of code, dermatologists can make themselves more valuable partners for developers and tech companies as well.
But Isn’t Coding Complicated?
This is a common misconception. While advanced programming can be complex, basic coding skills can be acquired relatively easily. Moreover, with the advent of platforms like ChatGPT, even those with minimal coding knowledge can receive guidance and develop functional tools.3
Note: The following is the direct output from ChatGPT, as a result of the following prompt.
“Hi ChatGPT. I want you to provide guidance to physicians on how to leverage ChatGPT to accomplish and run basic coding tasks. For example, provide the specific sequence of prompts a physician might input to go from knowing nothing about coding, to building a scheduling triage platform for their front office in Python within a Jupyter notebook, as an example. This software should reorganize patients in the schedule in order of their chief complaint, anticipating how long each visit will take to make the clinic run smoothly. Take the physician from the very first step, downloading Python, to the end goal (a functional software program).”
From Zero to a Triage Platform: A Step-by-Step Guide with ChatGPT
1. Setting Up the Environment:
Begin by downloading Python, the programming language we’ll use. Visit the official Python website, download the latest version, and follow the installation prompts.
2. Introduction to Jupyter Notebook:
For this project, we’ll use Jupyter Notebook, an interactive coding environment. Open the “Command Prompt” in Mac, or “Terminal” in Windows, and install it using:
Figure 1: Installing the Jupyter Notebook
Launch it with the command:
Figure 2: Launching the Jupyter Notebook.
3. Begin the Conversation with ChatGPT:
Engage with ChatGPT, and start by asking: “Guide me in creating a scheduling triage platform for a clinic using Python.”
4. Define Your Needs:
ChatGPT will likely inquire about specific requirements. Provide details like:
- Types of complaints you encounter
- Typical duration for each complaint type
5. Developing the Triage System:
With guidance from ChatGPT, you’ll develop a system that:
- Takes in patient details and chief complaints
- Estimates appointment duration based on complaint type and appointment type (e.g. new patient visit versus follow-up visit)
- Organizes patients in order of estimated visit duration
6. Sample Code:
Figure 3: Sample code produced by ChatGPT, copy-pasteable directly into the Jupyter Notebook.
7. Troubleshooting
In the journey of coding, encountering issues or errors is inevitable. Fortunately, ChatGPT can assist in troubleshooting these hiccups. For instance, let’s say the `ClinicScheduler` class in our triage system isn’t organizing patients correctly.
Issue: Patients are not being organized in the order of estimated visit duration.
ChatGPT Solution:
Begin by asking ChatGPT: “The `organize_schedule` method in my `ClinicScheduler` class isn’t sorting patients by their estimated visit duration. Can you help?”
ChatGPT might then guide you to check several components:
1. Ensure the `complaint_durations` dictionary contains accurate duration estimates.
2. Verify that the sorting key in the `organize_schedule` method is correctly targeting the duration element of the patient tuples.
3. Check if the patient data added to the system is accurate, especially the complaint type, to ensure it matches the keys in the `complaint_durations` dictionary.
By breaking down the problem and analyzing each component, ChatGPT can guide users to pinpoint and resolve coding issues effectively.
8. Iterative Development:
As one gains more experience and knowledge, refining the code becomes less cumbersome and daunting. A later model could integrate actual appointment times or interface with electronic health record systems. This base code can also be tweaked with the help of a more qualified software engineer, who can help to produce a deliverable platform that brings your code to life. To this end, consultation with a professional software engineer can be leveraged to provide an avenue to address one’s goals.
The Large Language Model Advantage
A large language model is a type of artificial intelligence system trained on vast amounts of text data to generate human-like text based on given prompts.4 By analyzing patterns in the data, it can produce coherent and contextually relevant sentences, answer questions, and perform various text-based tasks. Its capabilities are derived from its extensive training data and intricate neural network architecture. GPT-4 and its associated interface, ChatGPT, developed by OpenAI, is a Large Language Model and conversational AI that can guide users through coding tasks, among other things.4 With its intuitive interface and expansive knowledge base, physicians can leverage it to move from coding novices to creators of simple yet impactful applications. The authors would like to provide our audience with this real-world example.
Considerations and Limitations
Privacy: Always be cautious about patient data. In the example above, real patient names and complaints should never be used without appropriate security measures. However, new updates to ChatGPT by OpenAI allow advanced security features, including keeping all data on company machines.5 Additionally, it is possible to keep inputted data from being used by OpenAI for model training purposes.
It is also important to keep in mind that some tasks may require advanced coding skills. However, with platforms like ChatGPT, you can always seek guidance or outsource more complex components. The digital landscape evolves. Periodic updating and refining of skills and tools will be necessary.
Conclusion
The age of the digital physician is here. Embracing coding is not just an enhancement to a physician’s toolkit, but an essential component. Physicians are problem-solvers by nature. By demonstrating the boundless capabilities available to make realities of the solutions we envision, we hope this manuscript will motivate our peers to explore, innovate and iterate to improve patient care and the world around us. Technology is inevitably going to change and shape the future of medicine as a whole, and dermatology more specifically. By learning these skills, dermatologists can ensure that we are partners of these changes rather than passive recipients. With tools like ChatGPT making the journey easier than ever, there’s no better time to dive into the digital realm and harness its potential for the betterment of patient care.
Disclosures
The authors report no relevant financial disclosures.
1. Kubben PL. Why physicians might want to learn computer programming. Surg Neurol Int. 2013;4:30.
2. Glines KR, Haidari W, Ramani L, Akkurt ZM, Feldman SR. Digital future of dermatology. Dermatol Online J. 2020;26(10)
3. Perkel JM. Six tips for better coding with ChatGPT. Nature. 2023;618(7964):422-423.
4. De Angelis L, Baglivo F, Arzilli G, et al. ChatGPT and the rise of large language models: the new AI-driven infodemic threat in public health. Front Public Health. 2023;11:1166120.
5. OpenAI targets businesses with ChatGPT’s latest huge update. https://www.thestreet.com/technology/openai-targets-businesses-with-chatgpts-latest-huge-update-. Date accessed: Sept 19, 2023.
Ready to Claim Your Credits?
You have attempts to pass this post-test. Take your time and review carefully before submitting.
Good luck!
Recommended
- Practice Management
Maximizing Valuation and Outcomes for Practice Owners: A Conversation with Dana Jacoby
Clint Bundy
Dana Jacoby
Ty Theriot, BS
Alexandra Streifel, MD
Adam Byrd, MD
Vinayak Nahar, MD, PhD, MS
Megan S Evans, MD
Christopher Haas, MD
- Practice Management
A Case Study in Selling a Dermatology Practice
Clint Bundy
Alison Moon, MD
- Practice Management
Panic-induced Digital Marketing: Avoid Short-sighted Shifts in Long-term Strategy
Naren Arulrajah