What Even is a Rhetorician?
Originally Published: July 9, 2026
You may have heard the term "rhetoric", but what does it really mean? And what is a rhetorician?
You've likely heard the phrase "That's just rhetoric" as a dismissal or condemnation of a politician giving a speech. While it is true that the study of rhetoric began with a focus on political persuasion, there is a lot more to rhetoric than just empty posturing from people with political agendas.
To put it concisely, rhetoric is the study and practice of persuasion. Therefore, a rhetorician is someone who studies and practices persuasion. While this definition does not capture the depth and width of the modern field of rhetoric, it is an essential foundation by which I can build your understanding of rhetoric.
The study of rhetoric dates back to ~600 BCE in Ancient Greece. There is debate about who can claim "invention" of the study of rhetoric, with the most commonly believed founders being Corax and Tisias. As I mentioned above, their focus was predominantly political persuasion; as the first democracy, Ancient Greece strongly valued public participation in politics. The principles of Corax and Tisias influenced many of the greatest scholars of Ancient Greece, such as Socrates, Plato, and especially Aristotle, who wrote what many consider to be the most important single work ever published about rhetoric, simply titled "Ῥητορική", or in English: "Rhetoric".
Case Study: My First Fractional CTO Client
Originally Published: April 16, 2026; Updated: June 12, 2026
My first engagement in a Fractional CTO capacity is at a company where I previously worked full-time.
I was initially hired to be a Salesperson. Shortly into my tenure there, I noticed several time-consuming data entry tasks were slowing down our Salespeople and clogging our phone lines, so I built a basic program in C# to automate several of these repetitive tasks, and eventually built tools to guide our phone operators through basic FAQs to avoid transfers to our advanced support teams. I was quickly promoted to Lead Software Engineer, where I continued to develop my own tools while also maintaining the company's other proprietary systems.
A few years after I left that role, I started my own Advising practice and the owner reconnected with me to offer a part-time CTO-type role. In this capacity, I have largely resumed my previous responsibilities at the company, while also working closely with the owner and department leaders to make decisions about the direction of the company, updating proprietary software to new standards, and other high-level needs of the business.
"Why Not AI?"
Originally Published: May 26, 2026; Updated: June 5, 2026
"Why should I choose to pay you instead of just asking an AI?"
As I boarded a train to attend my first event of Boston Tech Week, someone boarding with me asked what event I was attending and then what I do for work. I told him that I started my own Consulting and Advising Practice and his only response was a question: "Why Not AI? If I was a founder, why should I choose to pay you instead of just using an AI?" As I answered his questions, I realized this would be an excellent article to write for my website.
To keep this concise, I will share my top 3 reasons why you should still hire experienced people instead of just relying on AI.
1. Using AI often feels like playing the game "2 Truths and a Lie".
For those unfamiliar, "2 Truths and a Lie" is a social icebreaker game for groups where you come up with 2 true facts and a lie about yourself, and the group tries to guess which one is the lie. Working with AI output can often feel like a more complex and consequential version of this game, where the truths can be genuinely helpful advice, but the lies can be anything from inconsequential mistakes or misleading half-truths all the way up to liability-inducing business advice or production-destroying technical direction.
Trying to identify the "lies" without experience and expertise in the subject matter can be difficult, time consuming, and risky. Hiring an expert to provide important context and help you avoid potentially disastrous decisions will pay off in the long run. Building a business is already a risky endeavor, why would you amplify the risk by choosing an AI over an expert?
2. Knowing what questions to ask and how to ask them is invaluable.
AI is decent at making precisely what you ask for, but knowing what to ask for and how to word the request is something that can take years of working with the topic to get right. A few misaligned requests usually won't cause noticable issues, but continuous misaligned additions to a tech stack builds technical debt and a pile of liabilities waiting to collapse.
From my personal experience working with non-technical people trying to write code with AI, I find that many of the issues with the output come from leaving out a detail in the request, describing a request in wording that is too similar to a different concept, or trying to use a framework in a way it was not designed to work. Sometimes, the AI notes potential mismatches between the request and the capabilities of the technology you are using, but not always; so hiring an experienced technical person to your team can help avoid much of the mismatch between your actual needs and what the AI generates for you.
3. AI rarely produces "new" material and is reliant on what it saw when training.
Without getting too technical, AI generates responses based on the material it was fed when training. As such, it struggles to generate truly "new" information, often providing an output that is an amalgamation of publicly available information with tweaks to make it appear to answer the prompt. In a lot of cases, this is perfectly acceptable; but when you are making decisions that impact the future of your business, relying on an assortment of automatically gathered information may lead to decisions that are not the right fit for your situation.
In software specifically, the nature of how AI is trained means its output can be impacted by a lot of issues found in publicly shared code. For one, many public codebases contain a large assortment of issues, poor practices, and outdated standards, not to mention how many abandoned, unfinished projects are available to browse online. The problems found in these sources can leak into the output you receive when working with an AI, leaving your business vulnerable. Further, AI has little access to proprietary codebases, meaning it has no reference point for most of the code that powers successful, established businesses. AI also routinely struggles with uncommonly used technologies, as there is little material available for it to "understand" how the tech works.
Software is a rapidly evolving field, with security vulnerabilities and errors found frequently and standards changing regularly. AI can be great at providing a foundation for experienced engineers to build upon, but choosing AI over a software engineer is an admission that your company's technology is largely comprised of publicly available components, may not reflect a high standard of security compliance, and is likely going to experience instability; all of which can have costly consequences.
For a more Rhetoric-centered analysis on this point, see my article on "The Death of Authorial Voice"
Conclusion
If you want to gamble with your business while having a lack of clarity and no guiding hand, just use an AI. You will probably be okay for a while, but with time, you will likely run into a problem that no AI can solve and no human will want to sort out. If you instead want someone who knows when something is wrong, knows the details and intricacies of the real world, knows what costs and benefits are relevant to your business, and can help provide clarity and peace of mind, hire me.
Leave a Comment, Ask a Question, or Submit a Rebuttal.
What I Learned Writing a Website by Hand in 2026
Originally Published: June 7, 2026; Updated: June 16, 2026
I built this entire website by hand in Notepad++ in 2026. Here's a summary of the process and what I learned.
When I started building my website (yes, this website you are viewing right now), my only previous experience with web development was writing a series of small HTML and CSS changes for a client with an old, simple website. I spent about a week of afternoons cleaning up the archaic layout, standardizing style and format across the site, and fixing a few issues I found. I also had worked with offline HTML documents at a previous employer, which gave some insight into HTML's structure, but that was obviously not web development.
Despite my lack of real experience at the time, I had opinions on web development that I formed from years of watching YouTube videos highlighting good and bad web dev practices (Here's a link to one such video about an unexpectedly well-made website). As such, I decided to only use basic tools and to limit my reliance on publicly available code and generative AI for three primary reasons:
1. I wanted to challenge myself. Often, doing things the "hard way" teaches more than taking the "easy way out". Read More.
2. I wanted an efficient and performant website. Many websites keep getting larger, slower, and more battery-draining.
3. I wanted my website to be a reflection of myself. Building from the ground-up allows more customization and personality.
Just to make it even more fun (and due to the massive performance boost potential if I wrote it well), I decided to minimize the amount of JavaScript I use in the site, relying on HTML and CSS as far as they would take me.
I chose Notepad++ to be my primary editor, as it had several features that made editing my aforementioned client's website easy, such as collapsable blocks and highlighted HTML tags and CSS selectors. And... that was all I needed to get started.
May 11, 2026:
I opened a new file in Notepad++, saved it as "index.html", and started writing the site header.
Before the day was done, I had learned quite a bit about stacking HTML tags in the same screen location and how to manage screen-space positioning without breaking formats or overflowing.
I also ran into my first limitation of HTML and CSS: measuring the dimensions of an object. Not including some workarounds with inconsistent behavior (read more under May 18 below) or a CSS feature that is not widely available yet, there is no scriptless way to get the calculated dimensions of an HTML object. I decided that static dimensions and managed content sizes would be good enough for now.
Note: The CSS specification actually does define calc-size() to solve exactly this problem (MDN calc-size documentation). Unfortunately, the 2nd and 4th most widely used browsers, Safari and Firefox, currently have no support for calc-size().
May 12, 2026:
On day 2, I learned a ton about CSS @media queries. These queries enable great deals of reactive design without a single line of scripting! For example, @media (hover: hover) and @media (hover: none) can help you determine if the user is on a computer or on a mobile device! (read some caveats about that under June 2 below)
One big win of the day was figuring out how to simulate button click functionality without scripts or dependencies!
The button click win was sadly countered by running into another limitation of HTML: you can't cache a block of HTML to be rendered in a page; only whole pages can be cached. HTML blocks require either JavaScript to dynamically re-insert the block or a backend that pre-processes the document before sending it to the user. This means that, despite 99% of my site-header staying exactly the same between pages, I cannot cache it and must serve it in-lined with every page.
Thankfully, you can still very easily cache blocks of common CSS and JavaScript without re-serving it with each page!
May 13, 2026:
Lesson of the day: only use HTML objects and iframes if you know you need them. The use-case for objects and iframes is somewhat narrow, and there is a lot of potential for issues. Also, each iframe is a complete document, meaning each iframe significantly increases the memory and processing requirements for the page. Thus, these are not good options for site-header caching. Dang.
May 14, 2026:
I learned more about webp and AVIF photo encoding. I had experience with these formats before, including when I tried to write my own image compression format a couple years ago, but there was still much to learn about efficient encoding and browser support.
AVIF is almost always more size efficient than webp at the same quality (or better quality at the same size) but, despite AVIF being a somewhat popular format that has been available for over 7 years, many browsers, photo viewing applications, and photo editors still have no or limited support for AVIF (for example, see how my phone's photo app rendered one of my AVIF encodings below). As such, I chose to encode all photos on my site as webp, which has far better software support and is still highly efficient.
May 15, 2026:
Before I built this site, I had been sharing my photos with people using OneDrive, which often resulted in the recipients complaining about OneDrive. The range of complaints included everything from the clunky interface, to slow load times, to frequent loading failures.
On my end, OneDrive has gotten considerably less performant as time goes on, which ties into my Point 2 about efficiency and performance above. What used to be a decently quick cloud filesystem is now a slow, error-prone website that does not inspire confidence in its reliability. The sharing controls are sometimes unresponsive and often unclear on if the changes saved. Buttons on the OneDrive site randomly stop working. I occasionally have the load time and loading failure issues friends and family complained about.
As such, I decided to build a high-performance and reliable Photo Gallery to make sharing photos work on my terms. Check it out here!
One of the concepts that enabled my Gallery to reach such a high performance target was CSS Sprite Sheets. Instead of serving 20 different images when a user loads a Gallery folder, I serve one large image that CSS cuts up into appropriately sized chunks and applies to the buttons. This saves a bit of object overhead and reduces the number of server loads needed to render the page.
Beyond the Gallery, I finally learned how to correctly stack sticky headers. It's one of those concepts where doing it for the first time is tricky, but then it's easy on future uses.
I found that width and height units appear simple on the surface, but have a suprising amount of depth thanks to the absurd number of unique combinations of browser implementations, device specs, and user settings (more on that under May 20 below).
I finally showed my site to my wife and... she couldn't read it. At this point, my site was exclusively in high-contrast OLED-friendly color scheme, meaning perfect black backgrounds and white text/foreground elements. I love the way it looked, but I love my wife more, so I added a theme selector that will swap out background and foreground colors depending on your selection. Try it out in the header above!
The final lesson of May 15th was about the inconsistency of HTML tag closing. I spent considerable time trying to track down an issue where the Gallery layout would inconsistently break or duplicate some buttons when loading certain directories. The root cause for this issue ended up being that I was not closing the HTML tags for the buttons properly.
For my non web-dev readers, HTML items are created by tags in an .html document. For example, a link is created by writing
<a href="https://www.youtube.com/watch?v=dQw4w9WgXcQ">Click me!</a>
which will render as Click me! on the webpage.
The inconsistency is that some HTML items can be closed in the same tag that creates them, while others can't, and some tags actually don't support closers at all! This is a simple concept but is not explained in most new dev guides online.
For example, the image HTML tag is self-closing, meaning this would produce a valid image element:
<img src="./gallery/image.webp" alt="Photo Description" />
However, link tags require a closer, meaning the below tag is invalid and can cause issues if you included it on a page:
<a href="https://www.youtube.com/watch?v=dQw4w9WgXcQ" />
And that's exactly what happened to my Gallery: I transitioned the photo blocks from HTML images to links to allow for easier navigation, but didn't realize I needed to add closer tags to the newly created link items.
May 16, 2026:
I finally got the site theme selection working properly. CSS Selectors are incredibly powerful, but until I learned of a feature that only became widely available in 2024 (see May 21 below), I found them complex and fragile; selectors required placing the corresponding HTML elements in specific spots in the document, and any change to the order of elements could break the entire integration!
May 18, 2026:
I found the first of the truly inescapable JavaScript uses. Each of the issues I had run into before the 18th had a workaround in HTML or CSS. The workarounds were often janky, unreliable, and not preferable to simple scripts, but at least there was a way to get some level of functionality without JS.
However, saving info to the user's browser and loading that saved data is impossible in HTML/CSS (by design). With a few exceptions (none of which enable controlled save/load), every time a browser page loads, the HTML and CSS is reverted to its initial format.
The reason I needed save/load was due to the theme selector from earlier. Every page load would reset the theme back to the default I had set, which is obviously not preferable. I decided to also add a default theme selector based on the user's system theme preference.
The "JavaScript is better" saga of May 18th did not end with local storage. May 18th was when I started trying one of the hackiest CSS-only workarounds: element dimension calculation using CSS scroll-driven animations. This workaround worked with accuracy within 1/50th (0.02) of a pixel about 90% of the time. However, that 10% produced results that were so inaccurate as to break several elements' formatting. Here is the CSS-Tip article where I learned of this workaround.
I spent several hours debugging and tweaking the workaround to try to get it to work consistently, but there were too many obstacles in the way. First, browsers often quantize values to increase performance. This means the highly precise decimal values I needed were occasionally reduced to simple integers, which caused odd jumps in final value. Second, browsers will skip certain frames in animations when performance metrics drop. For a basic animation, this is fine; most people can't notice when 1 or 2 out of 60 frames in a second are slightly incorrect. For an animation that is more sub-pixel precision ruler than visual effect, this meant I could have random drops of several pixels in every measurement. The final straw was realizing how difficult it would have been to test, due to how different browsers implement scroll-driven-animations. This fully talked me out of attempting this method further.
May 19, 2026:
I created my logo and site icons! I decided I wanted something that reflected my combined background of technical experience and communication expertise, so I prototyped quite a few designs before settling on a quill-pen that transitions into circuitry:
May 20, 2026:
The day started with a question: "How do I make my website look good on both a huge TV and a tiny phone screen?" This is a question I still have not fully answered as I write this on June 17th, and one that almost no-one seems to know the answer to based on how many sites look awful when browsing on my 65 inch TV.
One compounding factor to the difficulty of answering this question is how different browsers implement features like zoom, user-changeable default text size, viewport size calculation, browser UI elements, and so much more. For example, my Samsung Galaxy S25 Ultra has a 1440x3120 screen resolution, but my default browser reports a screen size of 385x833 and viewport sizes of 384x701 or 384x798 depending on if the URL bar is visible. For another example, page zoom on Chromium-based browsers (Chrome, Brave, Edge, etc) scales devicePixelRatio, which is the internal rendered pixel to screen pixel ratio, meaning 200% zoom on my 1920x1080 laptop screen makes the website CSS act as if the screen is 960x540 (actual numbers are lower, as they subtract the URL bar height). Firefox instead implements zoom by scaling inner and outer width values and never updating devicePixelRatio, making it not an option for cross-browser scaling support. Even Apple's typical consistency is not present here, with Safari implementing zoom differently across Mac and iOS.
I obviously can't just use pixel measurements, as some people have huge 720p TVs and tiny 1440p phones. I can't just use screen size measurements, as a photo that takes up 50% of a phone screen would be too small, while 50% of a giant TV would be too much. (Mention Galaxy S25U resolution)
One final note for May 20th: adding a simple shadow to text in HTML/CSS takes more lines than I expected. It was easy, I was just surprised that, with all the features and shorthand CSS has now, there is no concise single-pixel text-shadow invocation. This is the CSS I used for the text shadows on Gallery buttons:
text-shadow:
1px 1px 0 var(--bg),
-1px 1px 0 var(--bg),
1px -1px 0 var(--bg),
-1px -1px 0 var(--bg),
0px 1px 0 var(--bg),
1px 0px 0 var(--bg),
0px -1px 0 var(--bg),
-1px 0px 0 var(--bg);
May 21, 2026:
Capitol SVG.
One of the biggest CSS features of the past several years: ":has". This helps avoid the awkward specificity, inherency, and document order issues I had prior.
Leave a Comment, Ask a Question, or Submit a Rebuttal.
In Defense of DIY in the Age of AI
Originally Published: May 29, 2026; Updated: June 8, 2026
When an AI can do up to 90% of your work in a few prompts, is there ever a reason to Do-It-Yourself?
"Don't Feed the Animals" (Cognitive Offloading) Today, I attended an event as part of Boston Tech Week that highlighted which skills matter most in our now AI-centric world. This event started with a quick introduction from the organizers, a round of personal intros from the participants, and then a roundtable discussion on which skills we believe are currently the most valuable and which skills will be most valuable in the upcoming months and years.
One participant asked a question that stuck with me and inspired this article:
"I am a student in Bioscience; if AI can just write all of the Python I need for my analyses, do I even need to learn how Python works?"
Several participants gave their input, myself included. The room seemed split about 75-25 in favor of "Yes, there is still a reason to learn things directly related to your field, even if an AI can usually handle it."
Leave a Comment, Ask a Question, or Submit a Rebuttal.
William and Mary Dyer
Originally Published: Sep 22, 2025; Last Updated: July 4, 2026
A trip to Ellis Island in NYC led to discovering 390-year-long ancestral coincidences.
Recently, Miura (my wife) and I went to NYC to celebrate my birthday. One of the places we visited was Ellis Island, the most famous historic immigration entry point in the USA (Ellis Island on Wikipedia). While we were there, we found Miura's great grandparents on the Wall of Immigrants; an emotional find given they arrived at Ellis Island from Poland in the 1930's, narrowly escaping the fate of millions of fellow Jewish Poles. Miura confirmed the details with her grandmother, which led her to explore more about her ancestry online.
Later that night, I was having trouble sleeping, so I decided to find a family tree website and start looking at my own ancestry. I tried a few of those sites when I was a teenager, but my father's lineage was incredibly difficult to trace due to largely comprising impoverished rural Appalachians. For example, my dad's grandfather (who never had electricity in his home despite living until 1984) is only documented in two US Censuses and an official death certificate. There is no record of his birth, I cannot find record of his marriage or divorce to my great-grandmother, and his gravestone is in an unmarked cemetery somewhere in the mountains of East Tennessee.
However, I did not encounter the same roadblocks as previous attempts and successfully traced each of my family tree branches back to at least 1660. I used the FamilySearch app (FamilySearch website — not sponsored; I just appreciate the service), which provides access to publicly released government documents, such as certificates of birth, death, marriage, and more, and uses crowd-sourcing to attribute names found in these documents to "profiles" for individual people.
As I traced my family tree back, I made sure to verify that the documents attributed to each of my ancestors seemed accurate and submitted corrections when necessary. For example, my great grandfather shared a surprising number of commonalities with someone unrelated in Oregon, over 2000 miles away. Both were named "William Locke", both were born around 1910, both married women named "Lula Mae", and both had surprisingly little government documentation available.
Sadly, I also confirmed I am not related to the famous John Locke (John Locke on Wikipedia).
However, I still found a lot of neat individuals on both sides of my family, and the two I want to highlight today are William and Mary Dyer, my 11th Great-Grandparents. (Note for this section: name spellings were not as standardized back in the 1600s as they are now, so you may see their names spelled as "Dyar", "Dyre", "Dier", or other spellings in old documents, but "Dyer" is what most online resources use.)

William was born in Lincolnshire in 1609 and Mary in London in 1611. In the early 1630's, the two met while William was working as a fishmonger's apprentice in London, and they got married shortly after in 1633. Both were Puritans (Puritans on Wikipedia) who wanted to reform the Anglican church instead of separating from it, but due to the continual attempts of King Charles I to force his religious views on the church, the Dyers escaped with many other Puritans to Boston, Massachusetts Bay Colony, in 1635.
William was a fairly wealthy and influential individual; he was one of fourteen owners of the original fishing wharf in Boston, owned 42 acres of land in what is now Revere, and had a house on the intersection of two of the most important streets in Boston at the time: Washington and Summer Streets. Further, after only 2 months of living in Boston, colony leadership appointed him as clerk for the project of "raysing a new Worke of fortification upon ye Fort Hill".
After the Antinomian Controversy (Antinomian Controversy on Wikipedia), William signed a petition opposing the banishment of John Wheelwright, a Boston-area minister who clashed with the leadership's ideology. This signature led to William's own disenfranchisement and disarmament. In 1638, William and Mary Dyer moved to Aquidneck Island with several other religious exiles from Massachusetts Bay, where William signed the Portsmouth Compact, the founding document for what is now Rhode Island (Left). One year later, William signed the Newport Compact, founding what is now the city of Newport, Rhode Island (Right).

William's influence did not end upon his exile from Massachusetts Bay; he continued to serve in public office under many different roles. He pretty much immediately started serving as Secretary in the governing body of the island (see his signature on the Newport Compact above), then General Recorder in 1648, became Rhode Island's First Attorney-General from 1650-53, a member of the general court in 1661-62 and 1664-66, the General Solicitor for 1665-66 and 1668, and Secretary to the Council in 1669. He was also named as one of the "primary purchasers and free inhabitants" in the Rhode Island Royal Charter (Rhode Island Royal Charter on Wikipedia).
William also served in Rhode Island's military outfit; in a record from 1648, he is referred to as "Lieutenant" and in 1653 he was a "Captain" and "Commander-in-Chief upon the Sea" assigned to head an expedition against the Dutch. This expedition coincides with the Dutch building a defensive city wall in New Amsterdam (now New York), the same wall that served as the namesake for modern Wall Street (Article Link). Some 16 years after the English took New Amsterdam, William and Mary Dyer's son (and my 10th Great Grandfather), William Dyre Jr, became the 14th Mayor of New York, serving from 1680-1682.
Mary Barrett Dyer's story is arguably even more interesting than William's. William and Mary separately went to England in 1651; William went to argue before the Royal Council that Governor Coddington of Rhode Island should be deposed, but Mary's reason for the trip is unknown. While William returned to New England a few months after the Council's judgment, Mary spent 4 more years in England, during which she converted to the Society of Friends, more commonly known as Quakers (Quakers on Wikipedia). She was convicted by their message of grace, liberty, and church-state separation in contrast to the Puritan message of strict hierarchy and lawfulness.
The first Quakers arrived in New England in 1656. At the time, no laws or formal suppression of the Quakers existed, but it would not be long before both legal and societal pressures would target the Quakers. Many Quakers received ten or more lashes for speaking on their faith throughout the Massachusetts Bay Colony, including William and Mary's neighbor in Newport, Herodias Gardiner, who was whipped ten times when caught evangelizing in Weymouth. One Reverend from the Boston Church, John Norton, even called for the total banishment of Quakers from the colony enforceable by execution, a law that would be later enacted in October 1658.
Mary returned to New England after the anti-Quaker pressures had begun. After stepping off the port in Boston, she was immediately imprisoned. William travelled to Boston to ensure her release, which was granted on condition that she was never allowed to return to the colony and was not allowed to speak to anyone on their trip back to Newport.
Undeterred, Mary continued to travel throughout New England preaching her convictions, being arrested multiple times throughout the colonies. One of her later arrests occured in 1659, when she travelled to Boston to support 2 Quaker missionaries who had been imprisoned. She was arrested essentially upon arrival and brought before the Governor, John Endicott. After a few days of trials, the Governor sentenced Mary Dyer to death by hanging, to which she replied "The will of the Lord be done." When the Governor instructed the marshal to remove her, she stated "Yea, and joyfully I go."
Mary was scheduled to be the third Quaker executed on October 27, 1659. After watching the first two executions, Mary's limbs were bound and face covered with a handkerchief. She remained calm and prepared for her death, but an order of a reprieve was announced before her hanging. Her son, William, had petitioned the authorities to stop her execution. Colony leadership used the public display and timing of the reprieve to attempt to scare and dissuade Mary from her mission.
If anything, this stunt seemed to reinforce Mary's committment to her convictions. In a letter to the Massachusetts Bay General Court, she wrote: "My life is not accepted, neither availeth me, in comparison with the lives and liberty of the Truth and Servants of the living God for which in the Bowels of Love and Meekness I sought you; yet nevertheless with wicked Hands have you put two of them to Death, which makes me to feel that the Mercies of the Wicked is cruelty; I rather chuse to Dye than to live, as from you, as Guilty of their Innocent Blood: [. . .] When I heard your last Order read, it was a disturbance unto me, that was so freely Offering up my Life to him that gave it to me, and sent me hither so to do, [. . .] for he is my Life, and the length of my Days; and as I said before, I came at his Command, and go at his Command." (Source on Google Books)
The martyrs' courage in the face of persecution and even death built a popular sentiment against the authorities. Massachusetts Bay leadership wrote a letter to the recently crowned King Charles II in an attempt to vindicate their actions, suggesting that the reprieve of Mary Dyer softened the martyrdom of the other two Quakers. After leaving Massachusetts Bay, Mary spent the winter on Shelter Island, where she learned of the authorities' document and made a plan to return to Boston to challenge them.
Mary left Shelter Island in April 1660, and made it to Boston on May 21. After a short 10 days, she was summoned to appear before the General Court. In her interrogation, Governor Endicott asked: "You will own yourself a Quaker, will you not?" to which Mary answered: "I own myself to be reproachfully so called." Following her sentence of execution, Mary stated "I came in obedience to the will of God the last General Court, desiring you to repeal your unrighteous laws of banishment on pain of death; and that same is my work now, and earnest request, although I told you that if you refused to repeal them, the Lord would send others of his servants to witness against them."(Source on the Internet Archive)
The next morning at 9 AM, she was taken through the streets of Boston to the gallows. Once they arrived, the authorities offered her the chance to repent and be spared, but she refused, stating: "Nay, I cannot; for in obedience to the will of the Lord God I came, and in his will I abide faithful to the death." When the charges were cited to her, they indicated that she "was guilty of her own blood", to which she rebutted: "Nay, I came to keep bloodguiltiness from you, desiring you to repeal the unrighteous and unjust law of banishment upon pain of death, made against the innocent servants of the Lord, therefore my blood will be required at your hands who willfully do it; but for those that do it in the simplicity of their hearts, I do desire the Lord to forgive them. I came to do the will of my Father, and in obedience to his will I stand even to the death." She was given one more chance to repent, to which she said: "Nay, man, I am not now to repent."
Mary Dyer was determined to either end the persecution of Quakers or to die a martyr, and unfortunately fate had her accomplish the latter. At least, her direct "accomplishment" was martyrdom; indirectly, her execution played a role in Quaker Activist Edward Burrough's appeal to the new King Charles II, who in September 1661 issued a decree to the governors of the Royal Colonies to halt executions and imprisonments of Quakers. Societal abuse targeting Quakers did not cease for some 10-20 years, but the decree effectively ended the laws that repeatedly imprisoned Mary and her friends and eventually killed her and 3 others.
131 years after her execution, the ratification of the First Amendment to the US Constitution would provide the freedom of expression in both speech and religious belief that Mary Dyer deserved. Just shy of 300 years later, a statue of Mary Dyer was placed in front of the Massachusetts State Capitol building (though it has a frequently made mistake on it: executions were not carried out in the Boston Common, but rather a place known as the "Common Lands" near Boston, about a mile south of the Boston Common - Source).

Given the abilities and convictions of my ancestors, I suppose it is no surprise I enthusiastically dedicate myself to the practice of debate.
Additional reading:
Portsmouth Compact on the Internet Archive
Newport Compact at Rhode Island State Gov Catalog
Rhode Island Royal Charter at Rhode Island State Gov Catalog
WikiTree Article on William Dyer
"The Dyers of London, Boston, & Newport" on Amazon
William Dyer on Wikipedia
Mary Dyer on Wikipedia
Leave a Comment or Ask a Question.
Reflecting on my Bachelor's Thesis
Thesis Published: Dec 2, 2020; Article Published: June 19, 2026; Last Updated: July 4, 2026
A brief look back at the tumultuous process of writing my undergraduate thesis: "An Argument Against the Justification of Paternalistic Laws in the United States"
Composing, defending, and publishing a thesis is required to graduate as an Honors College Fellow at my Alma Mater. Despite pursuing a degree in Communication Studies - Rhetoric, I proposed a research question rooted in Political Philosophy. There is much overlap in the practices of rhetoric and philosophy, so the process felt like a natural extension of my major-specific research efforts.
One of my favorite stories from college is that, due to the topic of my thesis, John Locke's "Second treatise of government" played a crucial role in several arguments, meaning I cited (Locke, 1689) in multiple spots. Further, my thesis was an extension of two of my previous works, meaning I also cited (Locke, 2019) frequently. The repeatedly switching in-text citations led to my advisor calling me in frustration to ask me to change how I formatted them to make it easier to understand the context of each at a glance.
Another (not so) fun fact I like to share about my thesis is that I wrote approximately 80% of it in only 4 days. The root cause of this procrastination was a depressive state I entered in the first year of the pandemic. Considering the short time frame in which I compiled my thesis, I am pleasantly surprised by the result as I re-read it today, June 19, 2026. I have nitpicks I might explore in a future critique of my thesis, but I am happy enough with how it reflects who I was at the time that I am sharing it in this article.
In closing, I want to extend my sincerest appreciation to my former professors as I reflect on the flexibility and kindness they provided as I struggled to balance mental health concerns with an exhausting job and heavy course workloads.
Abstract
In this thesis, I propose a framework through which laws may be analyzed to give a baselevel judgment of the law’s justifiability. According to this framework, a law must be outward-facing, motivated by something other than personal morality or religious ideology, and have a punishment equal to the action it prohibits to be justifiable. I then use this framework to analyze several laws classified as paternalistic in nature throughout the United States. First analyzed is cannabis prohibition laws, which fail all three tenets of the framework and is thus deemed unjustifiable. Next analyzed are seatbelt and motorcycle helmet requirements, which are also marked unjustifiable. Finally, coercive censorship is examined through the framework, also being rated unjustifiable. After using the framework to argue against the justification of these laws, I then employ the framework to show how mask mandates during the COVID-19 pandemic are justifiable.
Link to my Thesis in MTSU's Thesis Repo
Leave a Comment, Ask a Question, or Submit a Rebuttal.
Identifying a Theme in my Undergrad Studies: Defeating Apathy
Article Published: July 4, 2026
I found my old college laptop while moving recently, and reading my old papers and research revealed a common theme in much of my work: defeating apathy.
Years before I ever competed in a debate round or even knew that competitive speaking was a thing, I was a teenager from a poor, rural family searching for free music online. One of the freely distributed albums I downloaded featured a "song" that was a recording of a high-school junior speaking at a TEDx conference set to a pensive and melancholic background track (track 8 on this album and original speech on YouTube). The speaker, Mackenzie Lombardi, wrote the speech to compete in an "Independent Event" (usually called an IE by those in the competitive speech scene) and qualified for the National Tournament with the piece. Lombardi's speech focused on "the infectious problem of apathy" as she described it, a problem with which I deeply struggled during my teenage years.
Fast forward to today, and I recently completed a 10-mile (16-km) move from Revere to Boston. As I was cleaning out the closet, I found my college laptop. Since I was ready for a break, I sat down, plugged it in, and started browsing my files. I found probably 80% of the notes, papers, and research I completed during my undergraduate degree program, and reading through several documents revealed a common theme: defeating apathy.
The earliest of my papers I can find on the topic of apathy is a literary analysis of John Donne's "Death, Be Not Proud", dated April 10, 2018. (ET4.docx)
"I would write a story about an apathetic society that had been living within an artificial nation surrounded by ruins caused by a great war. The main character is a stereotypical teen boy from the 90’s; only interested in being “the best” at the trending sports and games and getting the attention of “hot” girls. He soon becomes the first to stumble upon the ruined outside world and it completely changes his worldview." - DB8.docx
Critical Paper 2.docx
Identifying a Theme in my Undergrad Studies: Satire and Memetics
Article Published: July 4, 2026
I found my old college laptop while moving recently, and reading my old papers and research revealed a common theme in much of my work: analyzing satire and memetics.
Fast forward to today, and I recently completed a 10-mile (16-km) move from Revere to Boston. As I was cleaning out the closet, I found my college laptop. Since I was ready for a break, I sat down, plugged it in, and started browsing my files. I found probably 80% of the notes, papers, and research I completed during my undergraduate degree program, and reading through several documents revealed a common theme: analyzing satire and memetics.
The earliest of my works on satire I can find is my first critical paper from my Composition II class, dated March 15, 2018.
Do you pronounce it "SQL" or "SQL"?
Originally Published: July 9, 2026
Jargon is even more than just which terms you use, it's also how you pronounce them.
Jargon usage is one of many ways hiring managers, potential clients, and others judge your knowledge on a topic. You likely know that jargon refers to vocabulary understood by only individuals "in the know" about a subject. What you might not know, or at least might not be consciously aware of, is that you are not just judged on which terms you use or how you incorporate them into a message, but also how you pronounce them. The most common example I encounter is that of "SQL".
The two primary pronounciations are saying the letters "S-Q-L" and combining it into a single word, "sequel". Which is correct?
The ISO/IEC standard and many official sources, such as the MySQL documentation, recommend pronouncing SQL as "S-Q-L". For example, MySQL explicitly states that the correct pronunciation is "My Ess Que Ell", not "My Sequel".
SQL was originally named SEQUEL for Structured English QUEry Language in the 1970's, but a trademark cease and desist from Hawker Siddeley (a UK-based aircraft company) resulted in a name change to SQL for Structured Query Language. While it is possible that the original name stayed prevalent due to habit, I disagree with the common assertation that this is the primary cause of "sequel" being a common pronunciation.
1. SQL was only named SEQUEL for about half a decade.
2. The first commercially available product to implement SQL was released after the renaming to SQL.
3. Almost everyone who worked in software while SQL was still SEQUEL has either retired or, unfortunately, passed away.
I find it improbable that a name as short-lived as SEQUEL that was never used commercially and only by people who have since retired or died would establish a pronunciation that has persisted nearly 50 years past its renaming. Memetics, in-group culture, and ease of pronunciation offer much more compelling logic for the persistance of the "sequel" pronunciation.
Some people find "sequel" easier to say, while others spell out "S-Q-L" in an attempt to avoid confusion. Many people do not consciously think about it.
1. Jargon is inherently exclusionary.