Saturday, October 28, 2023

How to get the RSS Feed of YouTube Channels

I am a big fan of Harry Stahl's book "Cross-Platform Development with Delphi 10.2 & FireMonkey for Windows, MAC OS X (macOS) & Linux". I purchased this book in May 2021 and it has helped me several times as I'm porting my Zilch application from Delphi 5 VCL to Delphi 11 FMX.

Here's an Amazon link to Stahl's book: https://www.amazon.com/Cross-Platform-Development-Delphi-FireMonkey-Windows/dp/1549545760


I like to maintain RSS feeds of my favorite Delphi blogs. So, I went looking to see if Stahl has a blog I could add to my Outlook RSS Feeds. I found a couple of Stahl's websites. He does have a few blog posts but they are not easily converted into an RSS feed. 

Does YouTube support RSS feeds?

However, Stahl has a fairly active YouTube channel called Programming with Delphi. https://www.youtube.com/@programmingwithdelphi 

I wondered if YouTube supports RSS feeds? The answer is, YES!

Open Chrome and go to the YouTube channel you want to snag the RSS feed from. Right-click and choose the View page source option.



Then click the Line wrap checkbox in the top left corner of Chrome.



Press Ctrl-F to open the search box and enter rssurl.
Click and drag your mouse to highlight the URL associated with the rssurl attribute.
Press Ctrl-C to copy this highlighted URL to the clip board.
Your copied URL should look similar to the value below.

https://www.youtube.com/feeds/videos.xml?channel_id=UCiUVNZgsZZhziFL4oy-evEA


There you have it. That's all there is to grabbing the RSS Feed URL for any YouTube channel.

Enjoy!
Semper Fi
Gunny Mike
https://zilchworks.com




Sunday, July 23, 2023

Here's how I will code better in Delphi. How will you?

When it comes to Delphi, it's amazing how much I don't know, once knew but forgot, or just plain skipped over because it was too mind-boggling at the time. I took a break from reading Alister Christie's new book "Code Better in Delphi", which I purchased last night, to write this blog post.


While reading the bit on "refactoring", I realized how little refactoring I actually put into practice. Yes, I have Fowler's book, the second edition. And no, I haven't read it. I've thumbed through it a little in the past. I even tried looking for the "Introduce Explaining Variable" refactor Christie discusses on page 53 of his book. It turns out Fowler now calls it "Extract Variable". Keeping Fowlers "Refactoring" book on my desk, and referring to it often, is one way I am going to code better in Delphi.

It's amazing how much I don't know or once knew but forgot

I just started reading "The Observer Pattern" in Christie's book and had to stop. I bought "Head First Design Patterns" by O'Reilly, quite a few years ago. I have the 10th Anniversary edition with code examples in Java 8. My intent was to install Java on my machine and force myself to learn these patterns by following the code in the book. It didn't go so well. The authors do a great job using story to make learning fun. I just couldn't wrap my head around Java.

Christie has managed to reignite my desire to learn these patterns. I downloaded the Java source code. I plan to work my way through "Head First Design Patterns" pasting the Java source code into ChatGPT, and asking Chat to convert it to Delphi.

I will navigate through each pattern using this method. I will then revisit the same pattern in Primoz Gabrijelcic's book "Hand-On Design Patterns with Delphi". This is another way I'm going to learn to code better in Delphi. 

Another way is to revisit the Model-View-Controller method of code separation. Here is a the MVC song from 2007 I just learned about today. 

And I also want to implement "Interfaces".

Here's my list of how I will code better in Delphi:

  • Finish reading Christie's book 
  • Practice refactoring often
  • Learn and implement design patterns
  • Discover and utilize ways to separate code concerns such as MVC or MVVM
  • Overcome my stumbling block of Interfaces

Use the comments below to share how you will code better in Delphi.

Enjoy
Semper Fi
Gunny Mike

Sunday, July 2, 2023

Blueprint for Creating Delphi FMX Apps

 I just discovered an unlisted YouTube video Ray Konopka did in 2018 for Embarcadero's CodeRage called "Mobile View Management with Ray Konopka from RodeRage 2018

Although the demo and source code for this presentation is based on a mobile app, the concept Konopka presents is not just for mobile apps. It's actually a blueprint for creating any type of FMX app using Delphi.

Blueprint for Creating Delphi FMX Apps


I was compelled to write this blog for two reasons. The first stems from the fact that this is not just for mobile app development, it's for any FMX app development. And number two, the concept is simple, powerful, and elegant.

The source code Konopka used is available for download using this link https://delphibydesign.com/downloads/

From the Mind of Konopka

It doesn't matter whether you are brand new to Delphi or a seasoned Delphi veteran, if you get the opportunity to download and study an application built by Konopka, TAKE IT. You will learn so much. It's an opportunity to explore the mind of Konopka.

Konopka embodies the meaning of my favorite quote from Albert Einstein. "Make everything as simple as possible but not simpler."


Enjoy!
Semper Fi
Gunny Mike
https://zilchworks.com


Saturday, June 24, 2023

THE ULTIMATE BEGINNER'S GUIDE TO OBSIDIAN NOTES | How to Use Obsidian Notes

I have just started to explore Personal Knowledge Management (PKM). Didn't know it was a thing until a few days ago. Obsidian (https://obsidian.md) seems to be one of the most popular tools being used. This tutorial is a couple years old but it's very good. 

#PKM #obsidian #markdown

   

 Enjoy
Semper Fi
Gunny Mike
https://zilchworks.com

Sunday, May 7, 2023

Pseudo Code File Logic: Open > New > Save > Save As

Just finished working out the logic for handling file logic:

File Open
File New
File Save
File Save As

This assumes you are keeping track of the following:

  • Current Filename
  • Changes to file data
I've been wrestling with this one for a few days. And then it finally hit me. "Hey, Exit can be your friend."

Exit can be your friend







Within the last year, my thinking has been influenced by Jeff Patton and his book "User Story Mapping". At work I have been involved in many meetings/discussions where everyone is in agreement that we need to implement "Solution X". However, everyone has their own interpretation of what "Solution X" is.

https://www.amazon.com/User-Story-Mapping-Discover-Product/dp/1491904909


Enjoy,
Semper Fi
Gunny Mike
https://zilchworks.com


Friday, March 24, 2023

Delphi FMX Desktop Development: Part 1

Question: Is FMX Desktop Development Worth It?

This is part 1 in a series dedicated to Delphi FMX Desktop development. I am in the process of converting an old VCL application to FMX. When I first started playing around with FMX I was excited because one code base could serve up all different platforms; desktop, mobile, tablet. FMX also let's you create Windows, Mac OSX, Android, iPhone apps from that same single code base.

It wasn't until recently that I discovered one code base doesn't easily translate between desktop and mobile. So I am focused solely on creating one desktop code base for Windows and Mac OSX. This is a conscious choice on my part to stay in the desktop market. 

Over the last 32 years I have had several Mac OSX users asking me when I would have a version of my software that would work on their computers. Delphi FMX will let me make this happen. 

This leads to a series of questions:

  • What does the desktop market share look like?
  • How many new Mac customers will this bring me?
  • Is it worth the effort to create a desktop application for both Windows and Mac?
  • How does geographical location influence the decision?

I would like to thank the people at statcounter GlobalStats for providing the information in this post. Visit https://gs.statcounter.com/ for more information.


"The Whole World's Gone Mobile!
Forget Desktop Development."



Let's start by looking at the Desktop vs Mobile vs Tablet market share. We are going to look at the past year and then look at the past ten years. This will show the huge growth in the mobile market.

Worldwide 1 Yr Mobile 60% Desktop 40%


Worldwide 10 Yr Mobile 16 → 60% ↑ Desktop 82 → 40% ↓  


Looking at just this one graph you would think it's a waste of time to dive into the desktop market. On a world wide scale the mobile market has completely overtaken the desktop market. At first glance you might think, "Wow, it's not worth going after the desktop market. The whole world has gone mobile." 

"I Might be Ignoring 50% of the Users!"


What about the United States? Does geography play any part in my decision to create a desktop application? After all, the majority of my customers come from the United States.

USA 1 Yr Mobile 46% Desktop 52%



USA 10 Yr Mobile 15 → 46%  Desktop 82 → 52% 


Because the majority of my customers are from the United States, and I'm only concerned with the Desktop market share, what do these numbers tell me?

Today, the Desktop market share in the United States is 52%. This tells me that 5 out of every 10 potential customers are desktop users. This also tells me that mobile use has skyrocketed over the past ten years, and my decision to only focus on desktop might be ignoring almost 50% of the users.

What about my decision to only focus on Windows and Mac OSX customers?

USA 10 Yr Windows 82 → 60% OSX 16 → 30%↑   

Here is what the Desktop Operating System landscape tells me looking at the past ten years. Windows is still the dominant operating system within the USA even though it has dropped 22%. On the other hand Mac OSX has almost doubled it's share of the market.

Overall, the prospects look good to invest some solid time and effort into creating a Desktop application that caters to both Windows and Mac users. As far as how many Mac OSX customers can I expect? 

These numbers tell me I can expect about 5 new Mac OSX customers for every 10 new Windows customers. And that sounds pretty good to me. 

Answer: It's worth it for me!

Use this link for all 32 videos from the Desktop First UX Summit 2021
https://www.youtube.com/playlist?list=PLDWPwIbHH6jldMmNDe99y9NDWiEl-B3jK

Enjoy!
Semper Fi
Gunny Mike
https://zilchworks.com



Sunday, February 19, 2023

DELPHICON 2023: Every APP Trick in Book with Ian Barker

DELPHICON 2023: Every APP Trick in the Book with Ian Barker 

Timestamp links have been added to each of the individual sections of this presentation.


Every App Trick in the Book
https://youtu.be/PJNnCP2JvIY?t=14829
https://github.com/checkdigits/Every_app_trick_in_the_book_-_Ian_Barker
https://blogs.embarcadero.com/delphicon-2023-every-app-trick-in-the-book/

Notifications
https://youtu.be/PJNnCP2JvIY?t=15208

Elevation Button (VCL Only)
https://youtu.be/PJNnCP2JvIY?t=15443

ShellAPI
https://youtu.be/PJNnCP2JvIY?t=15705

Settings Persistence
https://youtu.be/PJNnCP2JvIY?t=15857
TPath

User Authentication OAUTH2
https://youtu.be/PJNnCP2JvIY?t=16100
TMS SOftware Sphinx (€395 - €595)
https://tmssoftware.com/site/sphinx.asp
eSeGeCe OAuth2 Client (€349 - €649)
https://www.esegece.com/websockets/http/oauth2

NEW User BioMetrics
https://youtu.be/PJNnCP2JvIY?t=16484

Check for Internet Conncetion
https://youtu.be/PJNnCP2JvIY?t=16922

Splash Screens
https://youtu.be/PJNnCP2JvIY?t=17115

Adding Some Coolness
https://youtu.be/PJNnCP2JvIY?t=17317
http://tinyurl.com/delphiwowfactor

Themes and Styles
https://youtu.be/PJNnCP2JvIY?t=17350
http://tinyurl.com/delphiw11design

Detecting Dark Mode (and Reacting when it changes)
https://youtu.be/PJNnCP2JvIY?t=17369
https://blogs.embarcadero.com/modernize-your-app-are-you-handling-windows-themes-correctly/

Checking for Updates
https://youtu.be/PJNnCP2JvIY?t=17390
https://blog.marcocantu.com/blog/auto_updating_programs.html (2007)

In-App Scripting
https://youtu.be/PJNnCP2JvIY?t=17498
Python4Delphi
https://github.com/pyscripter/python4delphi
TMS Script Studio Pro (€190 - €630)
https://www.tmssoftware.com/site/scriptstudiopro.asp
DWScript
https://github.com/EricGrange/DWScript

Single Instance
https://youtu.be/PJNnCP2JvIY?t=17640
https://stackoverflow.com/questions/73023379

Manipulating Images
https://youtu.be/PJNnCP2JvIY?t=17767
https://skia4delphi.org

To the Web
https://youtu.be/PJNnCP2JvIY?t=17863
uniGUI ($395 - $890)
https://youtu.be/fN4m-a-C64o
IntraWeb (€399 - €2,399)
https://www.atozed.com/intraweb/
TMS WEB Core (€395 - €1,295)
https://www.tmssoftware.com/site/tmswebcore.asp
https://youtu.be/u-8yjKO3AyM

Let's Encrypt - Free SSL Certificates
https://youtu.be/PJNnCP2JvIY?t=17954
https://letsencrypt.org
Pault Toth Delphi ACME
https://github.com/tothpaul/DelphiACME

Reverse Proxy via NGINX
https://youtu.be/PJNnCP2JvIY?t=18086
https://mginix.org

Enjoy
Semper Fi
Gunny Mike
https://zilchworks.com