Skip to main content

Posts

ChatGPT is a new, and faster, way to do programming!

Currently ChatGPT is in a free “initial research preview” . One of its well known use cases at this point is generating software code. I’ve also just used it to write most of this article… Well, actually a future article about cleaning up SRT subtitle files of their metadata faster than I have been by hand with Notepad++ and its replace functionality. Update: I recorded a screencast of writing the SRT subtitle cleaner application loading and processing portion. I relied heavily on ChatGPT for code. It was a fun process! ChatGPT, developed by OpenAI, is a powerful language model that can assist developers in a variety of tasks, including natural language processing and text generation. One such task that ChatGPT can help with is creating an SRT cleaner program. SRT, or SubRip Subtitle, files are commonly used to add subtitles to video files. However, these files can become cluttered with unnecessary information, such as timing lines or blank spaces. To clean up these files, developers c...

Theme error in 2010s Android App after AppCompat Migration

I plan on releasing a lot of my old work as GPL open source, but most of it has aged to the point that it no longer functions, or if it does work it’s running in compatibility mode. Basically it’s no longer best practices. Not a good way to start off any new public GPL projects, in my opinion. The current project I’m working on is an Android app that calculates star trails meant to help photographers get or avoid that in their night time photos. For now I’m going to skip some of the import process because I didn’t document it exactly. It’s been mostly trial and error as I poke around Android Studio post import. The Android Studio import process… Removing Admob Google Play code before the project would run at all. After removing dependencies, it kind of worked, but when running it in the emulator it shows a pop-up message saying that the app was developed for an old version of Android. Going through the process of updating code to match current best practices… I had the IDE convert the ...

Printing to file in Linux WINE

I noticed that this post has been sitting as a draft since 2011. At this point I have no idea if it’s useful or what I was even doing, but I might as well make it public in case someone can find it helpful! So I’ve been trying to get one of those PDF print drivers working in WINE without success. I then came upon a process that might work. When printing you need to select the checkbox “Print to file” that creates a .prn file. Just Linux things... I was using a program that only has printing facilities, but I want to export around 100 pages of text and images. Once you have the .prn (postscript) file, you can do any number of things to it. In my case I want the postscript file to be converted to HTML. I am also considering PDF format because that has more conversion options to eventually get me to HTML or plain text. sudo apt-get install cups-pdf Or it looks like that package might have changed to this… sudo apt-get install printer-driver-cups-pdf Where PDFs would be generated in /home/...

GPL-ed my text compare software!

Another piece of software I’m opening up by licensing it with GPLv3. This application allows you to compare text files with a focus on speed and handling larger files through temporary file buffering. Visit the GitHub page here . I also have the first release compiled with Visual Studio’s publish tool if you don’t want to deal with that but want to try the application out. Help me out through donating (Paypal). See an overview of the project here: This application relies on open source libraries: DiffPlex by Matthew Manela License: Apache-2.0 License Released with version 1.7.1 diffplex Fast Colored TextBox by Pavel Torgashov License: GNU Lesser General Public License (LGPLv3) Released with version 2.16.24 FastColoredTextBox

GPL-ed My 2D Tile Based Map Editor

As I’ve started to consider getting back into computer work, I’m trying to refresh my memory and grow further. Today I released, with the GPLv3 license, a 2D tile based map editor I wrote in C# WinForms. If you are into software and game development this might be of interest to you! The video doesn’t go into programming, but I describe what it is currently capable of. Maybe in the future I’ll do a video series explaining the code. I’ll also be looking through my software library to see if there is anything else I can release to the world under a GPLv3 license. Github: https://github.com/TheWayOfCoding/TWOC2DTileMapEditor Help me out through donating (Paypal) I wrote most of this around 2014 or 2015 with the intent to use it for a game a friend and I were going to make, but that didn’t happen. A few years later I ended up improving it a bit and using it in the development of an Android game (that is in an unfinished state). It’s nothing spectacular, but it is functional. I’m licensing ...

Made an app to quickly get short ebay affiliate links.

This article will be more about concepts than code. I’m not sure how ebay, and indirectly Impact the affiliate network, feel about programmatic website interaction. I’m also writing this well after I had created a working version of the program, so I’m working off of what information I gather after the fact. At one point, ebay was converting their affiliate linking system to a new format. The issue I had was hundreds of old links I had to re-create. Some aspects aren’t easily automatable like going through YouTube’s video descriptions. I don’t trust 3rd party tools linking to my YouTube account and I haven’t tried to roll my own. Though, I had wanted to make the process as fast as possible. Maybe ebay had a webservice to generate new links? Not that I could find. I even tried contacting support… nope. I set out with the goal of automating as much of the link generation process as possible through their affiliate website. My tool of choice was Visual Studio, C#, and WinForms. As I start...

Historic frequency based random lotto number generator.

This example is a little program to generate random numbers based on historic lotto results. Each potential result pull is weighted based on past results. The full project is available on GitHub here. First, we need to store the historic data. In this case I use an instance of SortedDictionary. int totalBallsNeeded = 6; // 5 plus the extra shot int doubleBallCount = 104; // 52 numbers times 2 SortedDictionary<int, int> lottoNumberFrequencyTable = new SortedDictionary<int, int>(); lottoNumberFrequencyTable.Add(1, 29); lottoNumberFrequencyTable.Add(2, 34); // Add more entries as needed lottoNumberFrequencyTable.Add(52, 38); There is a possible range of 01 to 52 lotto values. I pulled the frequency data from online sources. In this case the key is the lotto number and the value is the frequency. After the data is stored, we do the actual random number generation with weighted frequency. The array we link our random numbers to is twice as large as the total number of lotto po...

Updating the Raspberry PI GIT server.

I took time to refresh my Raspberry PI GIT server. I am still using the v1 board, but with a few upgrades and modifications. It was more to streamline the entire package instead of performance upgrades. The original Raspberry Pi in a modded case. Changes: I bought a half-height SD to Micro SD adapter. This makes it stick out less from the case. Sadly it’s not totally flush, but better at least. Along with that I upgraded to a 64GB micro SD card from a 32GB SD card. I upgraded the backup drives with 64GB Lexar JumpDrives (S45 LJDS45-64GABNL). They are super compact and had decent reviews. I decided to skip the RAID 01 mirroring approach with these. It simplifies things and there really isn’t any drawback besides maybe hot swap (which I don’t think would work because fstab uses unique drive identifiers). I picked up another power supply on a whim when I saw it at the store “Five Below” for a great price. This again streamlines things over my previous setup that was combo type where you w...

Adjusting Notepad++ to work with an ASP VBScript project.

I have a large project in classic ASP, VBScript, and Javascript. It’s a hassle dealing with it because developer tools don’t support it that well or at all. I recently poked around the open source editor Notepad++ and got it adjusted to work decently well with the project. Check out Notepad++ on the official website here . In the past I had used Eclipse with an old VBScript ASP syntax highlighter. It wasn’t perfect, but worked alright overall. The main issue is that the highlighting stopped working every so often, and not to mention Eclipse is bulky and a pain to use for various reasons. Here is a screenshot of Notepad++ adjusted to work with the project: Here are my main adjustments: “View” >> “Folder as Workspace” “View” >> “Document Map” “View” >> “Function List” “Settings” >> “Preferences…” >> “Editing” >> “Display line number” The function list feature won’t work without modification. My project is broken into a large number of “.asp” files and ...

Using Raphael the JavaScript graphics library.

In this example, I go over a simple use of Raphael.js. It draws 4 boxes on the page and allows you to move and resize each independently. Here is the graphics library (licenses under the MIT license): https://dmitrybaranovskiy.github.io/raphael/ Here is my code on GitHub. The basic gist of it is to initialize the primary Raphael object and apply it to the page. After that you create the boxes you want to draw and associate them with a “drag” function that is called when the user interacts with each box. Here is a selection of the code below: // Define 4 boxes to draw on screen var boxListing = [ { x: '10', y: '10', width: '70', height: '70', boxname: 'Box 1' }, { x: '110', y: '10', width: '70', height: '70', boxname: 'Box 2' }, { x: '210', y: '10', width: '80', height: '80', boxname: 'Box 3' }, { x: '310', y: '10', width: '90', ...