

- 9
- Episodes
- 1
- Ratings
- 2023
- First episode
About Programmatic
The Programmatic podcast is a weekly podcast that discusses various programming topics. We will share code, and solutions to common programming problems.
- Publisher
- Michael Doise
- Category
- technology
- Language
- en
- Explicit
- No
- First episode
- 25 Feb 2023
- Latest episode
- 8 Jan 2024
Latest episodes
9 episodes in the feed.

8 Jan 2024
Using Git in 2024
In this part of the conversation, we dive into the fundamentals of Git and GitHub. We explain that Git serves as a system for storing and collaborating on code, while GitHub enhances collaboration with additional features. Git is the offline method of conducting version control, while GitHub provides a remote repository for storing code. We highlight that GitHub now offers free private repositories and extends additional benefits to students and open source contributors. However, our focus in this episode is directed towards Git, exploring its built-in mechanisms for making changes. We delve into the various commands within the Git interface that allow for staging changes to be committed. Moving forward, we explore different strategies for staging and committing changes in version control. Visual cues within the source control tab of VS Code represent uncommitted changes with a dot and two branches, providing a clear overview. Once changes are staged, they can be committed to source control. Repositories, or repos, are pivotal in tracking different elements of a project. The main branch, often named "main" or "master," represents the version intended for production. Branches offer the flexibility to develop and experiment with different ideas without affecting the main branch. To illustrate the power of branching, we use the analogy of writing a book, where each chapter is written in its own branch, committed, and then merged back into the main branch. Git flow, a technique that leverages branching for feature development, ensures that developers do not interfere with each other's work, minimizing the occurrence of merge conflicts. Merge conflicts commonly arise when multiple developers modify the same lines of code. VS Code provides valuable assistance in resolving merge conflicts by presenting options to view and select different versions of the code. It's worth noting that merge conflicts are more prevalent on GitHub and less likely to occur with a local repository unless changes from multiple branches are merged. Proceeding further, we transition to discussing remotes and command line operations in Git. We cover topics such as committing changes using the git commit command, creating branches using git branch and git checkout, and how tools like VS Code can simplify these tasks. Additionally, we touch upon the process of retrieving projects from GitHub using git clone and contributing to them by forking and sending pull requests. We touch upon updating Mastodon source code using git and highlight the significance of staying informed about new releases. When it comes to pulling and pushing changes, we clarify that git pull integrates remote changes into the local code, while git push propagates local changes to online repositories. We also introduce the concept of git flow, which incorporates branches like main, develop, feature branches, and hotfix branches to manage different versions of a project. In passing, we briefly discuss software releases, noting that GitHub typically serves as the platform for such releases, surpassing the command line or VS Code. Ultimately, we emphasize the distinction between Git features and GitHub features, notably pull requests, forking, and releases, underlining that these functionalities primarily belong to GitHub. Understanding the features of GitHub and Git is of utmost importance, and we discuss the significance of conducting research to determine what suits individual needs best. While GitHub remains a popular choice for code storage, alternatives like GitLab also exist. Different Git providers may vary in terms of accessibility and features. We mention GitHub Copilot as a valuable tool and encourage listeners to find the tools and platforms that align with their preferences. Additionally, we briefly mention Xcode Cloud, which facilitates continuous integration and delivery for iOS apps, although it poses challenges in handling environment

3 Jan 2024
Programming Trends for 2024
Episode Notes In this episode, we discuss the impact of AI on programming, including the rise of AI coding assistants and their ability to automate tasks. We emphasize the importance of embracing new tools and languages, prioritizing user experience, and exploring programming trends. We also share personal experiences with AI tools and announce plans to cover these topics in greater depth in the future. Join us on this programming journey and stay up-to-date with the latest trends. Find out more at https://programmatic.pinecast.co (https://programmatic.pinecast.co) Send us your feedback online: https://pinecast.com/feedback/programmatic/33dde74c-a864-4ee4-b0df-22a427ad3d8f (https://pinecast.com/feedback/programmatic/33dde74c-a864-4ee4-b0df-22a427ad3d8f) Check out our podcast host, Pinecast (https://pinecast.com). Start your own podcast for free with no credit card required. If you decide to upgrade, use coupon code r-3bc504 for 40% off for 4 months, and support Programmatic.

21 Aug 2023
Comparing Website and Mobile App Accessibility
Episode Notes In this episode of the Programatic podcast, host Michael Doise explores the topic of accessibility in programming. He brings on expert Taylor Arndt to lend her insights and expertise to the conversation. Together, they delve into various aspects of accessibility in programming, covering both desktop applications and websites/mobile apps. The discussion kicks off with Taylor sharing her background in digital accessibility and programming, providing valuable context for the conversation. Michael mentions that future episodes will dive into more advanced topics, setting the stage for a deeper exploration of the subject matter. One key point of focus is how desktop applications are audited for accessibility compared to websites and mobile apps. They examine the application of the Web Content Accessibility Guidelines (WCAG) to desktop apps, particularly those developed with Electron. This discussion sheds light on the challenges and considerations involved in ensuring accessibility in different platforms. The conversation then turns to specific challenges faced by developers when implementing accessibility features, such as dark mode, in their apps. They discuss the Blindshell Classic 2, an Android phone with its own app system that does not support dark mode for Android apps. This prompts an exploration of the need for exceptions in accessibility audits and the processes that companies have for granting them. Additionally, they touch on the fact that many accessibility professionals may not have a development background, highlighting the need for collaboration between developers and accessibility experts. Moving on, they tackle the technicalities of incorporating images in websites and mobile apps with regards to accessibility. The concept of decorative images, their purpose, and how best to handle them for screen readers is explored. They emphasize the importance of considering keyboard users and discuss whether hiding images from screen readers using ARIA is acceptable. The differences between handling images on mobile apps and websites are also considered, with a focus on best practices and exceptions to accommodate specific app needs. Conveying information through alt text and accessibility labels is highlighted, particularly for images that are critical to app functionality and flow. The speakers then explore the topic of profile images on social media timelines and discuss the accessibility and usability implications of different approaches. They suggest that using a person's name as a description for the image may be more accessible than relying solely on alt text. They also compare the accessibility and usability of Twitter and Threads posts, noting that Threads can be technically accessible but pose usability challenges due to navigation complexities. Heading into the next segment, they analyze the differences in headings between websites and mobile apps, presenting their reasoning for specific heading levels and mobile-specific considerations. Collaboration with developers is emphasized as crucial for creating accessible apps, and the misuse of headings is cautioned against. The podcast then turns its attention to the usage of audio in mobile apps, addressing autoplay, interruptions, and the importance of uninterrupted audio sessions. The layout and distinction of images, buttons, and links in mobile apps are also examined, stressing the need for clear differentiation between buttons and links. Accessibility features such as underlined text for links are highlighted as essential components of an accessible design. Criticisms are voiced towards companies that fail to properly differentiate between buttons and navigable items in their mobile apps, and the importance of mobile-specific expertise in app accessibility is reinforced. The conversation wraps up with a discussion on the importance of code-level recommendations from...

24 Apr 2023
Development Organization
Episode Notes On This episode, Michael Discusses AI, and ways to organize your development environment. Resources MacGPT (https://www.macgpt.com) MacWhisper (https://goodsnooze.gumroad.com/l/macwhisper) Windows Package Manager (https://learn.microsoft.com/en-us/windows/package-manager/)

10 Apr 2023
Update Caution
Episode Notes On this episode Michael discusses the following topics. Challenge Results Python import feedparser def parse_rss_feed(url): feed = feedparser.parse(url) titles = [] for entry in feed.entries: titles.append(entry.title) return titles rss_url = "https://iaccessibility.net/feed (https://iaccessibility.net/feed)" titles = parse_rss_feed(rss_url) for title in titles: print(title) Shell Script hash !/bin/sh rss_url="https://iaccessibility.net/feed (https://iaccessibility.net/feed)" titles=$(curl -s "$rss_url" | xmlstarlet sel -t -m "//item/title" -v . -n) echo "Titles:" echo "$titles" Topics Michael discusses whether to update a project's sdk or APIs to newer or updated versions. For example, going from UIKit to SwiftUI. Providing Feedback Use the hashtag #ProgrammaticPod to leave us feedback. You can email me at mikedoise@icloud.com, and you can find Michael all over the web at mikedoise.

19 Mar 2023
Web Hosting and Programming Styles
Episode Notes On this episode, Michael discusses the following topics. Challenge Swift struct ContentView: View { // Declare the array with elements to display in the List let names = ["John", "Jane", "Alice", "Bob"] var body: some View { // Use the List view to create rows for each element in the array List(names, id: .self) { name in Text(name) } .navigationTitle("Names") } } } Python hash Declare the list with elements to display names = ["John", "Jane", "Alice", "Bob"] Hash Iterate through the list and print each name for name in names: print(name) Discord Bot import discord from discord.ext import commands client = discord.Client(intents=discord.Intents.default()) @client.event async def on_voice_state_update(member, before, after): if before.channel is None and after.channel is not None: channel = client.get_channel(123456789) hash Replace with the ID of the text channel where you want to post the message message = f'{member.mention} has joined {after.channel.name (http://after.channel.name)}' await channel.send(message) hash Replace 'YOUR_BOT_TOKEN' with your actual bot token client.run('YOUR_BOT_TOKEN') Topics Pick a good Web hosting provider with good tech support. Use Michael's DreamHost Referral. (https://www.dreamhost.com/r.cgi?2662686) We also discuss the different styles of programing from Object Oriented programming to event driven programming, and declarative programming. Transcript Web Hosting And Programming Styles Michael Doise Programmatic Edit TranscriptRemove HighlightingAdd Audio FileExport...? (https://auphonic.com/help/algorithms/speech_recognition.html#auphonic-transcript-editor) [0:00] Music. [0:19] And hello everybody, welcome back to Programatic. My name is Michael Doeys and it's good to be back with you all this wonderful week. We recorded a day late because there was just a lot to get done to publish the last episode. We had a lot of code that we had in the results. So something that we thought about was if you could basically take your code that you have for a solution and throw it through chat GPT and tell it to remove, the extra text or the punctuation, could it do that? And it does not seem to do it. [1:02] It wants to keep it all as code and try to remove, it's trying to be smarter than we are and remove the punctuation from the actual string. So like if there's a print statement, it would go in and remove the parentheses or punctuation and put them as words in the strings. Now, one thing that I did get it to do, is I said replace all semicolons in this code with the word semicolon, and it did that. So that was helpful for JavaScript. Unfortunately, that's the only language we do our examples in that are using semicolons. So yeah, that didn't help. When I tried to do parentheses, I was like, nope, not gonna do it, won't do it. So that was not very effective there. So unfortunately, I still have to do those by hand. So it takes a good little while to do that. [1:51] It takes an editing project that really shouldn't take very long, quite a bit longer to convert all of that to text, then throw it through 11 labs, and then have that converted to audio, and then put that into the tracks. But I think it really sounds great, And I haven't gotten any feedback so far, so I'm curious what people think of how we're doing our code snippets in the episodes. And in fact, I will have. Snippet in here today. And I will talk about that after we do our solutions. Our last challenge was to use an array, to build an app or a, console application that could have a list of names or items and. [2:43] Basically the results that will...

11 Mar 2023
Interpreted and Compiled Languages
Episode Notes On this episode of the podcast, Michael discusses the differences. between interpreted and Compiled programming languages. Challenge results from episode 2. Swift // Ask for the user's name and age print("What is your name?") let name = readLine() ?? "" print("What is your age?") let ageString = readLine() ?? "" let age = Int(ageString) ?? 0 // Print a statement based on the user's age if age < 0 { print("Invalid age!") } else { print("(name), you are a minor.") } JavaScript // Ask for the user's name and age let name = prompt("What is your name?"); let ageString = prompt("What is your age?"); let age = parseInt(ageString); // Print a statement based on the user's age if (age < 0) { console.log("Invalid age!"); } else if (age < 18) { console.log(name + ", you are a minor."); } else { console.log(name + ", you are an adult."); } Python Number Sign Ask for the user's name and age name = input("What is your name? ") ageString = input("What is your age? ") age = int(ageString) Print a statement based on the user's age if age < 0: print("Invalid age!") elif age < 18: print(name + ", you are a minor.") else: print(name + ", you are an adult.") Machine Transcript Programmatic 3 Interpreted And Compiled Languages 3:11:23 10 43 Am Edit TranscriptRemove HighlightingAdd Audio FileExport...? (https://auphonic.com/help/algorithms/speech_recognition.html#auphonic-transcript-editor) [0:00] Music. [0:09] All right, hi everyone. Welcome to another episode of the Programmatic Podcast. My name is Michael Dois, and while we're on episode three of the show, really exciting stuff, and I'm glad that we're back. This is really a great show, and we're going to do even more great episodes. I have a treat for you guys today, so I'm very excited to be here. We wanna start off today with our typical challenge results. [0:36] So last time I asked you guys to create a program that would let you get input and use a conditional based on that input. So like if you're you know you ask for an age or whatever you do something based on that variable. So as we did last time we're going to have 11 labs go ahead and read the different languages. So first up we have the Swift. Slash, slash, ask for the user's name and age. [1:11] Print left parentheses, double quote, what is your name? Question mark, double quote, right parentheses. Let name equals read line left parentheses, right parentheses, question mark, question mark, double quote, double quote. Print, left parentheses, double quote, what is your age? Question mark, double quote, right parentheses. Let age string equals read line left parenthesis. Question mark, question mark, double quote, double quote, let age equals int, left parenthesis, age string, right parenthesis, question mark, question mark, zero, slash slash, print a statement based on the user's age. If age is less than zero, left curly brace, print left parenthesis, double quote, invalid age. Exclamation mark, double quote, right parenthesis. Right curly brace, else if age is less than 18, left curly brace, print left parenthesis, Double quote backslash left parenthesis name, right parenthesis, comma. You are a minor. Double quote right parenthesis right curly brace. Else left curly brace print left parenthesis double quote backslash left parenthesis name, comma name. You are an adult. [2:16] Double-quote right parenthesis write curly brace javascript slash slash ask for the user's name and age let name equals prompt left parenthesis double quote what is your name double quote right parenthesis semicolon let age string equals prompt left parenthesis double quote what is your age double quote right parenthesis semicolon let age equals parsant left...

4 Mar 2023
Resources
Episode Notes Welcome to episode 2 of the Programmatic Podcast! On this episode, Michael discusses the following Items. Challenge 1 - Results Here are the results for the episode 1 challenge Swift // Ask for the user's name print("What's your name?") let name = readLine() // Print a personalized greeting message if let name = name { print("Hello, (name)! Welcome to my program.") } else { print("Hello, anonymous user! Welcome to my program.") } JavaScript // Ask for the user's name const name = prompt("What's your name?"); // Print a personalized greeting message if (name) { console.log(Hello, " + name + "! Welcome to my program.); } else { console.log("Hello, anonymous user! Welcome to my program."); } Python number sign Ask for the user's name name = input("What's your name? ") Number sign Print a personalized greeting message if name: print(f"Hello, {name}! Welcome to my program.") else: print("Hello, anonymous user! Welcome to my program.") Resources Training Courses LinkedIn Learning (https://www.linkedin.com/learning/) Udemy (https://www.udemy.com/?utm_source=adwords-brand&utm_medium=udemyads&utm_campaign=Brand-Udemy_la.EN_cc.US_dev&utm_term=_._ag_137319648178_._ad_634190764968_._de_c_._dm__._pl__._ti_kwd-296956216253_._li_1027266_._pd__._&utm_term=_._pd__._kw_udemy_._&matchtype=b&gclid=Cj0KCQiA0oagBhDHARIsAI-BbgeTGzD0ln8PKkHR_OhVM_q4UiJSqozSUwXzUMGDM_WkehLL01jRvNQaAu8WEALw_wcB) CodeCademy (https://www.codecademy.com/?g_network=g&g_productchannel=&g_adid=624951457609&g_locinterest=&g_keyword=codecademy&g_acctid=243-039-7011&g_adtype=&g_keywordid=kwd-41065460761&g_ifcreative=&g_campaign=account&g_locphysical=1027266&g_adgroupid=70946090375&g_productid=&g_source=%7Bsourceid%7D&g_merchantid=&g_placement=&g_partition=&g_campaignid=1955172604&g_ifproduct=&utm_id=t_kwd-41065460761:ag_70946090375:cp_1955172604:n_g:d_c&utm_source=google&utm_medium=paid-search&utm_term=codecademy&utm_campaign=US_Brand_Exact&utm_content=624951457609&g_adtype=search&g_acctid=243-039-7011&gclid=Cj0KCQiA0oagBhDHARIsAI-BbgciY3IBM0gEHBm_sw1SJewK80L6qygehuOqE0G6M4mvRUUSesuD8LUaAqfFEALw_wcB) FreeCodeCamp (https://www.freecodecamp.org) YouTube Code With Chris (https://www.youtube.com/channel/UC2D6eRvCeMtcF5OGHf1-trw) FireShip (https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwjv5OG5gcH9AhU5nWoFHbjIARgQFnoECAoQAQ&url=https%3A%2F%2Fwww.youtube.com%2Fchannel%2FUCsBjURrPoezykLs9EqgamOA%2Fsearch%3Fquery%3Dfirestore&usg=AOvVaw2ngXMVwY-BvxzM5CITjObw) Paul Hudson (https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwj93enSgcH9AhWIl2oFHfQZDs0QtwJ6BAgPEAE&url=https%3A%2F%2Fwww.youtube.com%2Fc%2Fpaulhudson&usg=AOvVaw0zIOj6d5v20Cvo6K31U8dd) Sean Allen (https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwjjmvLlgcH9AhVQkmoFHUCfCsgQFnoECA4QAQ&url=https%3A%2F%2Fwww.youtube.com%2Fc%2FSeanAllen&usg=AOvVaw0hAjb9pkg3O2r1jnMFBVui) Tutorials hacking With Swift (https://www.hackingwithswift.com) Ray Wenderlich now Kodeco (https://www.kodeco.com) Providing feedback Please let me know what you think of the show. Email me at mikedoise@icloud.com, or you can find me at <a

25 Feb 2023
Introduction to Programmatic
Episode Notes Welcome to the first episode of the Programmatic Podcast. In ourfirst episode, we discuss what the podcast will be about. We also show off the amazing voices from ElevenLabs, which will be used to read out code samples and challengeresults during the podcast. Challenge Create a small program that runs in the console, and asks for user input. Then, print the result on screen. Providing feedback Please let me know what you think of the show. Email me at mikedoise@icloud.com, or you can find me at https://techopolis.social/@mikedoise (https://techopolis.social/@mikedoise) on Mastodon. I am also @mikedoise (https://twitter.com/@mikedoise) on Twitter Thanks again for listening, and I hope you will join in the conversation and learn more about programming. Transcript Programmatic 1 - Introduction Michael Doise Programmatic Edit TranscriptRemove HighlightingAdd Audio FileExport...? (https://auphonic.com/help/algorithms/speech_recognition.html#auphonic-transcript-editor) [0:00] Music. [0:09] Hi, hello everyone. Welcome to the Programmatic Podcast, a weekly podcast about programming. I'm Michael Dois and this will be a weekly podcast to talk about, well, programming. I'm really excited to be here with you all today. I've been interested in programming ever since I was young, so I'm glad to be here. And we're doing this live weekly on YouTube, and we'll look at other methodologies as well. So this podcast will be about programming and how to write programs. [0:44] We'll be talking about how to write code, how to test your code, how to automate things, how to use shortcuts, how to use things on Android, Tasker, how to do pretty much anything to involve, to add programming into your life. Because the truth of the matter is, If you add one small thing of programming, like if you automate something in your life, you're using programming with computers. So this podcast is dedicated to the beginner and to the intermediate and to the expert. So we'll have content for all of those things. And you know, you might say, well, okay, if I'm a beginner and you're talking about expert level stuff, how do I figure that out? And the best way is how I got started and that's Googling it. Say, you know, I'm talking about a URL session. What the heck is a URL session? Google it. [1:46] Say what is a URL session in programming? And that's going to be the best way that you learn what this stuff is, right? So we'll be talking about pretty much everything. You know, we have Taylor in the chat who said every industry requires programming, and you're correct. You know, even, you know, you do finance and that requires programming to build the applications, but also to automate, you know, sending information from Stripe to QuickBooks or things like that. You know, and Taylor and said, maybe now we should Bing it instead of Google it. And yeah, you know, when everybody gets that feature, I agree. So we're really, you know, programming is, it's such an interesting time to get into it with AI and all those things. And we'll talk about that in this podcast as well. We're also going to do programming challenges at the end of each episode. Even today, I'll be giving you a programming challenge to work on. And, you know, we'll cover a few things before the challenge. And then we'll we'll go over those things on the next episode. [3:01] We'll talk about what those things, you know, how to come up with a solution for the challenge. We'll also be hearing from some other voices, mechanical voices on this podcast. And I'd like to introduce them now to the podcast listeners. Sorry, you guys on YouTube. [3:21] Yes, programming according to Taylor helps all the labor shortages. We're gonna hear now from our other folks that will be on...
Reach and audience
Public platform figures. Ratings count people who left a rating, not total listeners.
- Apple Podcasts (US)
- 5.0 / 5
- 1 ratings
Contact Programmatic
- Guest appearances
- Does not typically book guests
Based on episode analysis; this does not confirm that the show is currently accepting guests.
Host of Programmatic?
Claim your podcast to manage its listing and keep your show details accurate.
Pod Engine is an independent podcast discovery and analytics service and is not affiliated with or endorsed by this podcast. Artwork and show content belong to their owners. Full legal notice.
Explore this show
Podcast research with Pod Engine