Welcome to "The Boylan Zone"

Projects, Experiments, and Ramblings

Please choose a category above



You just never know what you're going to find here!
Safe & Easy File Transfer

VitVing.com is a file transfer web app with a unique twist ... encryption & decryption happens in your browser!

Some may say - big deal! Let me explain why this is the best way to transfer files.

Consider the alternative - leaving encryption to the server (non client side) dictates that the encryption key resides on a server somewhere. Could be the same server, could be a different server - either way that encryption key is stored somewhere. Having that stored means it is at risk of being exposed and if that happens your encryption isn't worth a thing.

With VitVing.com the user specifies a password for the upload - that password is used to determine the encryption key along with other randomness to avoid typical rainbow table findings. In this scenario the only place the encryption key can be recreated is with the right password and that is only stored in your head.

Before the file leaves your computer it is encrypted and it is also sent via https which is encrypted. AKA double encryption.

Cons:
  • Risk:If you forget your password then there is no way to get at the original files.
  • Low Risk: If you choose a weak password there is a possibility someone could decrypt your file. Choose carefully. This is not a big risk as they would also need to guess at the public file id which is a random 32 alphanumeric string. There are more random strings than atoms in the earth!
  • Non unique Risk:Since it is worthless to virus scan an encrypted file ... when the file is received it should be scanned for viruses. You never know what people give you and sometimes they dont' realize they are infected. Any decent anti-virus program will scan files as soon as they are downloaded.

Please see the about About VitVing.com
This site was a passion of mine - built from the ground up this is a great site for sharing within a family and with friends.

Much of the focus is on providing a nice view of media. There is a feed view, a grid view, a calendar view, and an activity view. Each view is filter-able to allow you to see just want you want.

Another big part of this site is sharing control. The uploader sets the permissions on each uploaded file so that they can share it with their close family, their family, and their friends. Also a feature is to allow others to re-share you media with their family circle. That control is important.

I have more plans for this site in the future and hope that more people being using it. Right now it is just being used by immediate family.
The BFRW (aka Brevard Federated Republican Women) is a great organization! They help our veterans and do lots of community work to help make our county a great place to live.

Their site was built from the ground up using bootstrap and jquery. The site has a nice red theme and the ability to gather information & reservations from their members.

The big benefit they saw from this project is cost. Using a VPS from ClouldFanatic along with lots of free software such as lets encrypt they now have a low cost web presence. No more big monthly software costs for things like Wix and Jot Form.

A side project for this was handling forms for them via 6Palms.com - a separate project.
Integrating forms into a web site from another web site was an interesting challenge. That is what the BrevardFederatedRepublican women are doing when they use 6palms forms.

The 6Palms forms admin provides an ability to create an account, specify a paypal account to place funds, and manage form submissions. Forms may or may not have a paypal payment button.

The forms are built around bootstrap and managed by form name and account id. The account id is guarded behind encryption and the form submissions are placed in a database. Those submissions are easily viewed from the owning account. The BFRW uses these forms for gathering volunteer information, lunch reservations, and membership dues.

Some of the interesting challenges were making sure 2 instances of bootstrap don't collide in namespace. Also found that bootstrap delivery to the client can be streamlined an optimized to your needs.

The overall architecture of this was stressing ease of maintenance. To that end creating new forms is really easy - just give it a name and if someone submits a form with that name you're good to go. Also the creation of forms was straightforward when using AI agents to do the bootstrap grunt work.
Orderly Cat is a wordpress plugin that organizes products within categories.

Example use: A product such as "I love you Mom" pillow can be in 2 categories; "Mother's Day Gifts" category and "Birthday Gifts". This product can be shown first in the "Mother's Day Gifts" category and shown last in the "Birthday Gifts" category.
EP-SS
EP-SS was a big project that took years to develop. It is still in use today and provides for order management for a small business.

Here are some of the features:
  • ShipStation integration - pulling order information from ShipStation to house in local database. An interesting API that provides fundamental order information.
  • ShipEngine integration - Shipping Label creation based on order info, package info, and a custom rule set
  • Shippo integration - Shipping Label creation based on order info, package info, and a custom rule set
  • Datatables - leveraging this javascript component to the max. This was streamlined to be able to quickly view/filter thousands of orders
  • MySQL, php - lots of custom scripts to update database full of orders, product information, inventory, and users. Many many reports too.
Shippy
A company known as StreamTech makes an automated package measurement system that needed a separate system to provide shipping labels. That is where Shippy came in.

Shippy would receive requests for shipping labels that included these measurements (weight, width, length, height) and then turn around and get a label and provide it as a response. There is logic in Shippy to handle getting rates from multiple shipping services and evaluating those rates along with a custom rule set to get the best label based on price, time to deliver, and seasonal special logic.

Shippy still works well today where it takes just a few seconds to get a label for packages as then run down the belt. The interesting part of the code here was getting rates from multiple shipping services simultaneously.
When Skype was decommissioned by Microsoft they left many customers that didn't like Teams without a good solution for chatting within a small organization.

Enter Spyke

Spyke is both a Windows application and a web site that provides chatting capability for a small business. It has served up thousands of messages and files and is still in use today.

Features:
  • Administration - "Admin" users manage Spkye instance users. Create accounts, enable or disable.
  • Typical Chat - see status of all users, attach files to messages, manage groups, update profile image
  • Edit messages after being sent, delete messages after being sent
  • Search for any text in a message you sent or received. Note: initial view is like the last 2 weeks but search goes back to the beginning of time.

One of the interesting challenges of Spyke was the ability to handle messages between the app and the web. There are actually 2 socket server - one for the app, one for the web.

The overall architecture was attempting to be simple - notifications are simple messages sent to the socket servers and that simply wakes up the person being notified (could be many computers). Once that person gets the notification they make an api call to the server to determine why they were notified.
The puzzle of the day was a Christmas gift from my daughter ... love it!

The trouble was it was hard - some days were harder than orders. I believe these types of puzzles were called Pentinomes.

This project was about providing solutions to the puzzle. The solutions were found randomly by a python script and presented on a web site in a manner that would reveal part or all of the solution. That was done because some people just like hints and not the whole solution.

I don't know how many total solutions there are but so far the random approach has found over 1,000,000 solutions where it usually finds about 1500 solutions a day running for just about an hour a day.
This project was a wordpress plugin to handle selling sign letters.

There is lots of nuances to wordpress and I think this plugin found them all. The big thing this plugin did was make the process quick, very quick.

The typical approach to this was to make a product (e.g. Brass Letters) that had many variations. The "many" turned out to be thousands when expanding all the options of letters, size, color, finish, thickness, and then some. To speed this up the idea of using variations was completely abandoned. Instead the product would have all the attributes that the customer wanted with a price that the supplier wanted.

The plugin is still in use today and has filled thousands of orders.
FlickR
My Attempt at being artistic with Photography

For a few years I really enjoyed taking pictures, and posting them on FlickR. I virtually met many nice people and saw their amazing artwork. FlickR is a really nice site for that sort of sharing.

Sponge Bob's pics
WordARoni.com
This was a web site to play an interesting word game. This idea started years ago when a friend at work (Ray) said there was only one word in the English language that followed the pattern "ILIKEIKE".

That was a puzzle I had to solve - after whipping out excel and doing some guesses I came upon the answer (Nonsense) and forgot about it for years. Then I thought about making a game that was built around that idea. Make a phrase and find the words that follow that pattern. I create many puzzles and this site presented one per day where people had accounts and they would compete for how many guesses that they took to get the answer. It was great fun for a year or two and then I realized not many people were playing.

Side note "BobBoylan" has only one word - "Pepperoni" (which I do like).
SearchARoni.com
This was a web site to play an interesting word search game.

The original game was 3 rounds where they became harder as they go - the score was the amount of time it took to solve (the faster the better). Each round presented a grid of letters where there was only 1 valid 5 letter word in the grid. There was a daily game and books - books were a small cost but nobody bought them. I gifted them to many people but most people just didn't use that part of the web app.

The challenge here was to make sure each grid only had 1 valid word. Creating the puzzles was yet another part of the project (diff web site). One thing I learned during this is that javascript is pretty fast - it could find all words in a grid in a split second.

This was another instance where the only people playing were my family. While I tried to advertise the even give out some merch it just didn't catch on.
The Objector
This was a Macintosh Application inspired by a project I did years ago named O-Boy.

The intention of this was to provide an easy way to browse the scriptable objects currently on your computer. This app would use AppleScript to query the current running apps as to what objects they currently had available. It was nice as it would use their dictionaries to guide the query and present a nice square-ified tree map to allow you the user to pick the object for further inspection. The user would then be able get the applescript associated with what they have selected to ease their scripting efforts.

It was going well but sales weren't huge so I pulled it from the App Store. The Apple team was a bit nasty about it too as they didn't want the app to rely on currently running apps and wouldn't allow the App to be sold until I made it work without querying live objects. That kinda killed it for me and soured my taste for making Macintosh apps.

Note: the O-Boy project from years ago was a MacHack submission. I actually went to that weekend event and met some interesting developers - it was in Michigan in like 1995? I think it was called Spinal Hack - something about this hack goes to 11.
Mock Lottery
This was a Web App to play lottery games. I also created an iPhone app for this - almost forgot about that.

This was a fun project that provided users with the ability to play popular lottery games for free - there was also no prize which may be why it didn't get a good following.

There was accounts, games, and tickets. Each game had a schedule and you could purchase as many tickets as you want for any game. When the game schedule make a winning set the app would check each ticket for a winner. I liked it but it really did show how much of a waste playing this sort of game is.
Dad Jokes
I just love "Dad Jokes"

I've always admired Dad Jokes - there is nothing quite like the reaction for when a Dad Joke kicks in. How about just one here:

Did you know they did a survey of the 7 dwarfs to see how they are doing? Well what they found out from the survey is that 6 out of 7 dwarfs are "NOT HAPPY".

OK, just one more

I was thinking about going on a diet where you eat almonds for breakfast, pistachios for lunch, and pecans for dinner? I thought about it and thought - that is just nuts!

BJs
The Discount Club I don't like ... for just one reason!

Why should I have to clip coupons when I pay for a yearly membership? Really doesn't make sense to me ... but they keep doing it! I'd get coupons in the mail have to check for coupons when I get to the store. If I didn't use the coupon then I pay a higher price - ugh!

Nonsense - I'm not having it.

I hope BJs realizes how many customers they lose because of this practice.