Don’t Let Perfect Be the Enemy of Good Enough: AI Podcast App
When I enrolled in an advanced AI coding class as a beginner I knew it would push me outside my comfort zone. But I underestimated how much my perfectionism would emerge when our assignment was building an AI podcast app with the Whisper API and Streamlit. I don’t typically back down from too many challenges so I dove in headfirst, determined to complete all the steps needed to build the app from scratch and I wasn’t just going to complete it, but I wanted it to be perfect. TLDR: I had to build an AI podcast app using the Whisper API (transcribes audio to text). The app takes the transcribed text and pulls out key points and summarizes the podcast. The Web UI was built using Streamlit. https://colabpodcastapp-jaye.streamlit.app/ My zeal quickly led me down pointless rabbit holes resolving insignificant errors unrelated to the app’s core functionality. Deployment issues with the Modal platform persisted, despite diligently troubleshooting. I kept pushing forward though as I was determined to have flawless code execution rather than completing the minimum viable product given the timeline constraints. My teacher’s sent the class a message and said – don’t let perfect be the enemy of good enough. That was a message just for me. I spent so much time trying and failing to get Modal to work correctly that I had to accept that finishing mattered far more than endless nitpicking over minor imperfections. Though my app wasn’t totally polished, it worked well overall thanks to piecing together the steps I’d learned. The errors became valuable lessons about the realities of coding. I also gained practical skills in AI transcription, NLP, APIs, deployment, and more. My sense of pride emerged not from the final product itself, but from persevering through hurdles and self-doubt as a beginner and submitting my project. I also learned how to finally use Streamlit and push a project to GitHub. Learning to code clearly isn’t linear. The messy twists and turns of this project taught me things no straightforward tutorial ever could. I’m feeling motivated to keep practicing and building, focusing on progress over perfection. My app wasn’t flawless in the end. But it worked despite the roadblocks. By reframing mistakes as growth opportunities, I felt genuinely empowered creating something using AI. ANDDD I got my certificate of completion as well. All in all it was worth the effort. If you’d like to see the project in action you can click my app link here https://colabpodcastapp-jaye.streamlit.app/. I’m not sure how active it’ll be without regular use and sometimes Streamlit disables apps when they aren’t being used frequently. If that happens, you can also see the screenshots below.
Choosing a Mascot for Spill University
Spill University is bringing the vibrancy of HBCU culture to social media. As this virtual community evolves, we are all calling Spill home – a place where Black joy and expression thrive. To commemorate our growth, it’s time to select an official mascot. As a new CompSci professor at Spill U teaching AI and Visual Design, I decided to create a few mascot options. A black panther felt fitting, symbolizing the strength and unity of our community (obviously). Using Midjourney’s AI generative art apps, I crafted prompts incorporating our school colors, vision, and energy. The results? Well you can check out the pics and choose which one you like best by voting on Spill. Our mascot will become a beloved part of our school heritage. By letting our creative community decide, the mascot selection process is bringing us together. Let’s gooooo!
Bringing Characters to Life With AI Art
I decided to create engaging characters using AI generative art. Midjourney has become my favorite tool for bringing the ideas in my head to the digital canvas. By carefully crafting prompts, I can describe a character down to details like hair color, facial features, clothing, and accessories. The AI art isn’t perfect, but provides a strong starting point for finalizing illustrations. Experimenting with Midjourney has opened up new possibilities for visualizing and sharing my stories. My characters feel more real and engaging through this AI-assisted creative process. I can’t wait to finish creating my characters so I can move onto the writing and publishing. My children have been helping me as this is their story to tell. They get excited when it’s time to write and create the stories. Check out some of the characters I’ve created. They’re modeled off of prompts I created based on the looks of my family and myself.
Nostalgia: Black Streetwear in DC
This photo series recreates iconic streetwear looks from my childhood growing up Black in the DC area during the 80s and 90s. I used Midjourney AI art to generate images that capture the vibe and culture of black fashion in DC back then. These images are a nostalgic tribute. Though trends evolve, the flair and expression of black style in DC never fades. Growing up, our fashion defined us and created a sense of pride and community. By prompting Midjourney with descriptive phrases I produced images that feel straight out of my old neighborhood. Honestly, I think generative art can be used for therapy. You can literally use it to recreate some of your happiest moments or things that made you smile from childhood or any other era or moment that brought you joy. I’d love to read about a case study on this in a few years. This collection celebrates not just the look of the 80s and 90s, but the energy, freedom and culture growing up in the DC Area represented at that time. AI has helped me visually remember an influential part of my roots. I’d even argue that around that time DC, NYC, and ATL (the southern hub) were the black meccas in the US. Even if you’d never been there you knew we were just dope. Check out the images below. Maybe one day i’ll post some of my old pics that aren’t AI generated. Midjourney was pretty solid on this one.
Revamp Your Tech Resume with AI
Transitioning careers into tech can be challenging, especially when it comes to showing your skills on your resume. Highlighting transferable skills from other fields in a way that appeals to tech recruiters can be challenging. Thankfully AI can help! I created a ChatGPT resume prompt a few months ago to assist with translating skills from non-tech backgrounds into tech-friendly language. The idea came after I attended a career workshop at a tech conference. The speaker emphasized the importance of tailoring resumes when changing industries. My prompt gets the LLM to rephrase skills and experience to better match tech job requirements. For instance, ChatGPT might recommend saying “Collaborated cross-functionally to improve team productivity” rather than “Worked with coworkers.” Prompts like this provide a useful starting point. I look forward to continuing to refine the tool to further empower career changers. My hope is that by incorporating AI, anyone can highlight their talents in a way that resonates with tech recruiters. With some AI assistance, changing careers might feel less challenging. Give my resume prompt a try in ChatGPT or another language model. This was tested in GPT 3.5 and 4. You can tweak it and test it in your own LLMs to see how well it works for you. I’ve included the prompt in a link below. Just click on the link and download it. Link to the Prompt
Bringing a Picture to Life with AI
I wanted to create a fun animated version of myself, so I combined a couple of different AI tools. First, I used Midjourney to generate a cartoon illustration of me based on a text description. The result was a cute, stylized portrait capturing my look and personality. Then, I recorded myself speaking and utilized D-ID technology to animate my AI art avatar with my own voice. The end result is a talking, animated version of me sharing my thoughts just as I would in a vlog or video. It’s not perfect, but the AI avatar mimics my facial expressions, lip movements, and other visual cues remarkably well for a few minutes of my time. Generating a personalized video avatar this easily would not have been possible even a few years ago. But with the rapid advancements in AI, all I needed was a little creativity and two user-friendly tools to bring a visualized version of myself to life. I’m excited to see how this tech evolves in the future. https://ai.jayecreates.com/wp-content/uploads/2023/07/aiavatarsample.mp4
Butterflies
Taking a break from my to-do list to spend quality time with my 5-year-old daughter was a special moment. She was working on her first puzzle and needed some help. I took 30 minutes to teach her and assist with assembling the pieces. The smile on her face when she touched the completed puzzle filled me with joy. I captured the moment in a photo and used AI generative art with Midjourney to surround her with colorful butterflies. Though it seemed like a small thing to me, helping her with that puzzle meant the world to her. The next one she did completely independently! Sometimes little moments like this mean so much more than crossing things off our task list. Slowing down for quality time with children should always take priority. The memory of her joy and sense of accomplishment still makes me smile. The OriginalThe AI Image
Creating an AI Music Converter
As a beginner learning to code, I wanted to build a tool to simplify converting between music file formats. Specifically, I wanted an easy way to go from Apple’s .m4a audio files to the more universal .mp3 format. Rather than manually exporting and converting each time, I used python and flask to create a music file converter. I enlisted ChatGPT to assist with writing the scripts. The end result is a functional web app that accepts uploads of .m4a files and outputs .mp3 versions. For now it’s just a bare bones backend without much styling, but it served my goal of automating those tedious format conversions. Building this music converter gave me hands-on practice applying python and flask while also creating a useful utility for my own music library. I learned a lot in the process that I can build on in future coding projects. With some more polish, this has the potential to become a public web application. It was a nice to bring this functional tool to life with the help of AI.
Automating My Sister’s Baby Shower with ChatGPT
Planning my sister’s baby shower turned into an unexpected coding adventure. As an event planner, she had a very specific vision involving custom tickets and QR codes for her guests. With only a few days until the event, I decided to see if ChatGPT could help me use python to make her vision a reality. I described the ticket requirements to ChatGPT who provided step-by-step python scripts. After tackling environment setup hurdles, I followed its guidance to generate unique QR codes and names from a spreadsheet. Integrating them into a ticket template required learning new skills like coordinates in Photoshop. With the codes and names placed properly, I had individual tickets for each guest. But manually emailing and texting them to attendees seemed daunting. Once again, ChatGPT provided scripts to automate sending the tickets in bulk. I learned about APIs and SMTP in the process. The journey wasn’t completely smooth. Some outdated recommendations from ChatGPT led to roadblocks. Navigating the differences of SMS versus MMS texting proved time-consuming. With the deadline approaching rapidly, I ultimately used ClickSend to manually send multimedia texts to the few guests lacking email addresses. In the end, the baby shower was a success! The guests loved the custom tickets and forest theme. When I finally made it home to breathe- I reflected on my coding crash course. I’m far from a python expert, but I learned valuable skills. And I got to flex my creativity in new ways. Automating tasks that once seemed tedious and manual now seems possible. I’m continuing to improve by working on other coding projects and exploring GPT-4. Coding still feels like a foreign language, but having an AI assistant provides guidance and inspiration. Problem-solving with python and ChatGPT was deeply rewarding. I never expected party planning to motivate me to dip my toes into coding. But necessity breeds invention. And with the right tools, I believe I can automate anything! Below are some screenshots of the code I used in the scripts to make everything work. I managed to also get a script to work using Twilio’s API to text people, but since this was just a sample I didn’t want to pay for a custom phone number, and I also didn’t want to send it from a random phone number that said sent from Twilio’s free plan or whatever so I just manually texted using ClickSend’s platform. It was a much better experience than Twilio anyway. Create Unique QR Based on Name of Attendee Add QR Code to Tix Send Tix via Email This is the final product. Everyone was happy and had their tickets ready to show for entry. I designed the ticket quickly in Canva and got the coordinates for where to place the Name and QR code in Photoshop. That was by far the easiest part of this experiment. Lol. I later learned that I could’ve done this with EventBrite much faster, but it was a fun first project.