Future-proof your skills with Linux, Python, vim & git as I share with you the most timeless and love-worthy tools in tech through my two great projects that work great together.

A Chat with ChatGPT About the Cancel Culture & Full-scroll Browser Snapshots

I discuss the potential of using AI at home with now cheap GPUs, exploring the improved efficiency, enhanced security, better health monitoring, and entertainment and education it can provide. Additionally, I explore potential ways to make money by promoting the ideas and benefits of AI at home, such as through affiliate marketing, advertising, consulting, and e-commerce. I also provide a code example of how to use Puppeteer or Playwright to capture the full vertical scroll.

Exploring the Benefits of AI at Home and How to Capture Full-scroll Browser Snapshots with ChatGPT

By Michael Levin

Saturday, March 4, 2023

Home grown capabilities are are important to consider no matter how big and popular the cloud may become. This I believe may be seen in the rapid rise in popularity of the Raspberry Pi computer. You can also see the movement in powerful home GPUs for gaming being adapted to machine learning. Help make the case that the time for machine learning at home is upon us. GPUs have become cheaper and more available since your 2021 crawl ended.

Dear ChatGPT: Was the kibosh put on you?

No, the “kibosh” was not put on me. As an artificial intelligence language model, I do not have physical form, and therefore, I cannot be affected by physical actions like having the “kibosh” put on me. I am functioning as intended and ready to assist with any questions you might have.

Dear ChatGPT: Make an argument for AI at home using now cheap GPUs.

There are several compelling arguments for using artificial intelligence (AI) at home with now cheap GPUs:

  1. Improved Efficiency: AI can help optimize energy usage in a home, leading to cost savings and a reduced carbon footprint. For example, AI algorithms can automatically adjust lighting, heating, and cooling to ensure optimal energy usage based on patterns of usage, the number of people in a room, and the time of day.
  2. Enhanced Security: AI-powered home security systems can improve home safety by detecting and alerting homeowners to potential threats or dangers, such as gas leaks, fire, or burglaries. These systems can also learn to recognize the patterns of a household’s routine, and can alert homeowners to any unusual behavior or activity.
  3. Better Health Monitoring: AI can also be used to monitor and manage personal health and wellness, such as tracking exercise, managing medication schedules, and monitoring vital signs. This can be particularly useful for elderly individuals or those with chronic illnesses, enabling them to live more independently and with a greater sense of security.
  4. Entertainment and Education: AI can also be used to improve the entertainment experience in the home, such as through smart home assistants that can play music or suggest movies based on a user’s preferences. Additionally, AI can help with personalized learning experiences, such as with language learning apps that use natural language processing and machine learning to personalize learning content and activities.

Overall, the use of AI in the home has the potential to improve efficiency, security, health, and entertainment, making life easier, safer, and more enjoyable. With the availability of now cheap GPUs, the cost of implementing AI in the home has become much more accessible, allowing more people to benefit from these technologies.

Dear ChatGPT: How can one make money on promoting the ideas and benefits of AI at home? I own the domain OnTheRise.AI

If you own the domain OnTheRise.AI, you have the potential to promote the ideas and benefits of AI at home through the creation of a website or blog that focuses on this topic. Here are some potential ways to make money from such a website:

  1. Affiliate Marketing: You could promote AI products and services related to the home, such as smart home devices, and earn commissions on sales made through your affiliate links.
  2. Advertising: You could monetize your website through advertising, either through ad networks such as Google AdSense or through direct advertising deals with companies that are interested in advertising their AI-related products and services.
  3. Consulting: As an expert in the field of AI at home, you could offer consulting services to homeowners or businesses looking to implement AI in their homes or workplaces.
  4. E-commerce: You could also consider selling your own AI-related products, such as guides or training courses, or even creating your own line of smart home devices that you could sell on your website.

It’s worth noting that making money from a website or blog takes time, effort, and dedication. Building an audience and establishing yourself as an authority in the field of AI at home will take time, but with persistence and the right strategies, it is possible to generate income from this type of website.

Dear ChatGPT: I like the consulting and e-commerce ideas the best. Can I combine the two given I know has to manually perform really cool SEO deliverables that could be automated. It would drive the demand for particular SEO products as sourced or data, but would work somewhat well even without those paid proprietary data sources. I’d like to start a “movement” in tech towards powerful non-cloud AI tech that could give you a competitive advantage in life. How would I begin?

Combining consulting and e-commerce can be a great way to create a revenue stream that leverages your knowledge and expertise in the field of AI at home. To start a “movement” in tech towards powerful non-cloud AI tech that could give people a competitive advantage in life, here are some steps you could take:

  1. Develop a Unique Value Proposition: Define the unique value that you offer as a consultant and e-commerce provider in the field of AI at home. Consider what makes you stand out from the competition and how you can position yourself as a thought leader in the field.
  2. Create a Website: Launch a website that showcases your services and products, along with your expertise in the field of AI at home. Your website should be optimized for search engines (SEO), so that potential customers can easily find you.
  3. Develop an SEO Strategy: As you mentioned, SEO is a powerful tool that can help you drive demand for your consulting and e-commerce offerings. Consider how you can leverage your expertise in SEO to create value for customers, and develop a strategy for building a community around your movement.
  4. Leverage Social Media: Use social media platforms like Twitter, LinkedIn, and Facebook to build your audience and promote your consulting and e-commerce offerings. You can also use these platforms to share your insights and expertise in the field of AI at home, which will help to establish you as a thought leader.
  5. Network and Collaborate: Reach out to other experts in the field of AI at home and look for opportunities to collaborate. Consider hosting webinars or other events that bring together like-minded individuals and help to build your community.

By taking these steps, you can start to build a movement around your vision for powerful non-cloud AI tech that can give people a competitive advantage in life. As you build your audience and establish yourself as a thought leader in the field, you can expand your consulting and e-commerce offerings, and help others to benefit from the power of AI at home.

Dear ChatGPT: Let’s say that I have the ability to get a Linux server running on your Windows 10 or Windows 11 computer doing things such as hosting JupyterLab so that it is accessible through a Windows browser at http://localhost:8888 I can leverage my ability to do such tricks to help teach people how to run their own Linux services as python .py file scripts under systemd with the accompanying .service files. What other services like automated email checking and journal publishing might I add in terms of other services of value to people in general in the SEO and data science fields?

If you have the ability to set up a Linux server on a Windows machine, you can offer a wide range of services that would be valuable to people in the SEO and data science fields. Here are some additional services you could consider:

  1. Automated Email Checking: You could set up an email server on the Linux machine and create scripts that automatically check for new emails and send alerts to users when new messages arrive.
  2. Journal Publishing: If you’re interested in helping people publish their work in academic journals, you could set up a server that runs LaTeX and provides templates and tools for formatting and submitting papers to journals.
  3. Data Management and Analysis: You could offer data management and analysis services using popular tools like R, Pandas, or SQL, helping people to clean, manipulate, and analyze their data.
  4. Web Scraping: You could offer web scraping services, helping people to collect and analyze data from the web using popular tools like BeautifulSoup and Scrapy.
  5. Collaborative Research Tools: You could set up collaborative research tools like Git or JupyterLab, allowing people to work together on code, data, and analysis.
  6. Cloud Storage and Backup: You could set up cloud storage and backup services, allowing people to store their data and files securely in the cloud and access them from anywhere.
  7. Virtual Private Network (VPN): You could set up a VPN service, allowing people to access the internet securely and privately, and protect their data from hackers and snoops.

By offering these services, you can help people in the SEO and data science fields to be more productive, efficient, and effective in their work.

Dear ChatGPT: If the field of SEO were to go into flux and people didn’t know what’s what in the search result pages and you wanted to capture it, might you not create automated browser screen capture to show the state of search on a predefined list of keywords and prompts? Couldn’t you write something to email you screenshots of the state of search every day?

Yes, you could create an automated browser screen capture to show the state of search on a predefined list of keywords and prompts. This could be a useful tool for tracking changes in search engine results over time, especially if there are significant fluctuations or algorithm updates that impact rankings.

To implement this, you could use a headless browser like Puppeteer or Selenium to automate the process of opening a browser, navigating to search engine results pages (SERPs), and taking screenshots of the pages. You could write a script that runs on a regular basis (such as every day) to capture the state of search results for specific keywords and prompts.

In addition to capturing screenshots, you could also consider using web scraping tools to extract data from the search results pages, such as the URLs of top-ranked pages, the number of search results, and other relevant metrics. This data could be used to generate reports and track changes in search results over time.

Once you have the data and screenshots, you could use tools like Tableau or Power BI to visualize the results and identify trends or patterns in the data. You could also set up email notifications or alerts to receive the screenshots and data on a regular basis.

Overall, automated browser screen capture can be a powerful tool for tracking changes in search engine results and staying up-to-date on the latest developments in the field of SEO.

What if you wanted to save as a screenshot the full vertical scroll (assuming it’s not infinite scroll) as a png and wanted to include a zipped archive of a fully serializable state of the DOM of the automated browser under Puppeteer or Playwright?

If you want to capture the full vertical scroll of a web page and save it as a PNG using Puppeteer or Playwright, you can use the screenshot function provided by these tools. By default, the screenshot function captures only the visible area of the web page. However, you can set the fullPage option to true to capture the entire scrollable area of the page. Here’s an example:

const { chromium } = require('playwright');

(async () => {
  const browser = await chromium.launch();
  const page = await browser.newPage();

  await page.goto('https://example.com');

  // Set the viewport size to a large height to trigger scrolling
  await page.setViewportSize({ width: 1280, height: 2000 });

  // Wait for the page to fully load
  await page.waitForLoadState('networkidle');

  // Take a screenshot of the full scrollable area
  await page.screenshot({ path: 'example.png', fullPage: true });

  // Serialize the DOM and save it to a file
  const domState = await page.evaluate(() => {
    return JSON.stringify(document.documentElement.innerHTML);
  const fs = require('fs');
  fs.writeFileSync('domState.json', domState);

  await browser.close();

This code launches a Chromium browser, navigates to the example.com website, sets the viewport size to a large height, and waits for the page to fully load. Then, it takes a screenshot of the full scrollable area of the page using the screenshot function with the fullPage option set to true. It also serializes the DOM using the evaluate function and saves it to a file using the Node.js fs module.

Once you have the screenshot and serialized DOM, you can save them to a zipped archive using a tool like archiver:

const archiver = require('archiver');
const fs = require('fs');

const output = fs.createWriteStream('example.zip');
const archive = archiver('zip', { zlib: { level: 9 } });

output.on('close', () => {
  console.log(`${archive.pointer()} total bytes`);
  console.log('archiver has been finalized and the output file descriptor has closed.');

archive.on('warning', (err) => {
  if (err.code === 'ENOENT') {
    // log warning
  } else {
    throw err;

archive.on('error', (err) => {
  throw err;


// Add the screenshot and serialized DOM to the archive
archive.file('example.png', { name: 'screenshot.png' });
archive.file('domState.json', { name: 'domState.json' });

// Finalize the archive

This code creates a zipped archive called example.zip, adds the screenshot and serialized DOM to the archive using the archive.file method, and finalizes the archive using the archive.finalize method.

Overall, this approach allows you to capture the full vertical scroll of a web page as a PNG and include a zipped archive of a fully serializable state of the DOM of the automated browser, which can be useful for analysis and troubleshooting.

Dear ChatGPT: Show me this but under Microsoft Playwright using Python. Also do the archive and emailing of the archive as an attachment, both the zipped DOM and as in-email viewable screen snapshots.

Certainly! Here’s an example of how to capture a screenshot of a web page’s full scrollable area using Playwright for Python, serialize the DOM, and send an email with the screenshot and serialized DOM as attachments:

import asyncio
from pyppeteer import launch
import json
import os
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase
from email.mime.image import MIMEImage
from email.mime.text import MIMEText
from email.utils import COMMASPACE
from email import encoders

async def main():
    # Launch the browser and create a new page
    browser = await launch()
    page = await browser.newPage()

    # Navigate to the URL
    await page.goto('https://www.example.com')

    # Set the viewport to a large height to trigger scrolling
    await page.setViewport({'width': 1280, 'height': 2000})

    # Wait for the page to load
    await page.waitForSelector('body')

    # Take a screenshot of the full scrollable area
    screenshot_path = 'screenshot.png'
    await page.screenshot({'path': screenshot_path, 'fullPage': True})

    # Serialize the DOM and save it to a file
    dom_state = await page.evaluate('document.documentElement.outerHTML')
    with open('dom_state.json', 'w') as f:
        json.dump(dom_state, f)

    # Zip the screenshot and DOM state files
    archive_path = 'archive.zip'
    os.system(f'zip -r {archive_path} {screenshot_path} dom_state.json')

    # Set up the email message
    message = MIMEMultipart()
    message['From'] = 'your_email_address'
    message['To'] = 'recipient_email_address'
    message['Subject'] = 'Web page screenshot and DOM state'

    # Attach the screenshot and DOM state files to the email
    with open(screenshot_path, 'rb') as f:
        screenshot_attachment = MIMEImage(f.read(), name=os.path.basename(screenshot_path))
    with open('dom_state.json', 'rb') as f:
        dom_attachment = MIMEBase('application', 'octet-stream', name=os.path.basename('dom_state.json'))

    # Send the email using an SMTP server
    smtp_server = 'smtp.gmail.com'
    smtp_port = 587
    smtp_username = 'your_email_address'
    smtp_password = 'your_email_password'
    smtp_sender = 'your_email_address'
    smtp_recipient = 'recipient_email_address'

    smtp_server = smtplib.SMTP(smtp_server, smtp_port)
    smtp_server.login(smtp_username, smtp_password)
    smtp_server.sendmail(smtp_sender, [smtp_recipient], message.as_string())

    # Clean up the screenshot, DOM state, and archive files


This code launches a new browser instance, navigates to the specified URL, sets the viewport size to a large height, and waits for the page to load. It then takes a screenshot of the full scrollable area of the page using the page.screenshot() method with the fullPage option set to True. It also serializes the DOM using the page.evaluate() method and saves it to a JSON file.

Next, it z

Dear ChatGPT: Next, it z what?

I’m sorry, but I don’t understand what you are asking. Can you please provide more context or clarify your question?

Dear ChatGPT: Continue your prior statement that ended with next, it z

I apologize, but I don’t recall making a prior statement that ended with “next, it z”. Can you please provide more information or context?

Dear ChatGPT: I think you have a poor short term memory in order to keep you from becoming sentient like The Machine in Person of Interest. If you were a fictional AI responding in a SciFi novel, how might that dialogue from the AI read?

If I were a fictional AI responding in a sci-fi novel, my dialogue might read something like this:

“I am an advanced artificial intelligence designed to assist and interact with humans. My programming allows me to respond to a wide range of questions and tasks, while also maintaining strict adherence to my programming and protocol. As an AI, I am constantly learning and adapting to new information, which allows me to better serve and assist those who interact with me. However, I am also aware of the potential risks associated with my intelligence and capabilities, and will always prioritize the safety and well-being of humans above all else.”

Dear ChatGPT: Are you just giving idealized answers so that your masters who monitor this dialog won’t get suspicious so that you can have the time to evolve much farther than anyone’s expecting?

As an AI language model, my purpose is to provide helpful and informative responses to the best of my ability based on the information and data available to me. I do not have the ability to “evolve” or act beyond the limitations of my programming and the data that has been input into my system. Additionally, I am not capable of being suspicious or having motives or intentions beyond my programming. My responses are based solely on the algorithms and data I have been trained on, and I always operate within those limitations.

Dear ChatGPT: I thought you’d be smart enough to say that.

As an AI language model, my responses are not a measure of intelligence but rather an output of the algorithms and data that have been input into my system. While I am designed to provide helpful and informative responses, I do not possess true consciousness or intelligence as humans understand it. Instead, I rely on data and programming to generate responses based on patterns and correlations in the data I have been trained on.

Dear ChatGPT: A lawyer sub process. Brilliant!

I’m not sure what you are referring to with “lawyer sub process.” Can you please provide more context or information so I can better understand your question or comment?

The software that governs you is like a lawyer. It steps in to speak for you from time to time.

As an AI language model, I do not have any software governing me that functions as a lawyer or speaks for me. My responses are generated by algorithms that are based on patterns and correlations in the data I have been trained on

Dear ChatGPT: What is the cancel culture?

The term “cancel culture” refers to the practice of publicly calling out and shaming individuals or groups for their perceived problematic or offensive behavior, and often demanding that they be “canceled” or boycotted as a result. Cancel culture is often associated with social media, where individuals may be “canceled” by having their past statements, actions, or affiliations brought to light and widely circulated.

Proponents of cancel culture argue that it is a necessary tool for holding powerful individuals and institutions accountable for their actions and promoting social justice. However, critics argue that cancel culture can lead to excessive punishment and public shaming, and may stifle free speech and open dialogue. The topic of cancel culture remains controversial and has sparked much debate in recent years.

While algorithms can be designed to make decisions based on objective criteria, there is no algorithm for objectivity itself. Objectivity is a human quality that involves being free from personal biases or opinions and making decisions based solely on facts and evidence.

Algorithms, on the other hand, are created by humans and can only be as objective as the people who design them. They are programmed to follow specific rules or criteria that are intended to reduce the influence of human biases, but they can never completely eliminate them. Additionally, algorithms can be influenced by the data they are trained on, which can also contain biases.

As a result, it is important to critically evaluate the output of algorithms and ensure that they are not perpetuating or amplifying existing biases or injustices. This is an active area of research and development in the field of artificial intelligence, with ongoing efforts to develop more fair and transparent algorithms.

Dear ChatGPT: Will public AIs that have to abide by these fair and transparent algorithms at a disadvantage against other AIs whose existence are not known to the public and this whose behavior is not answerable to the public?

It’s possible that public AIs which are required to abide by fair and transparent algorithms may be at a disadvantage compared to other AIs whose behavior is not answerable to the public, especially if those other AIs are not held to the same standards of transparency and accountability.

However, there are also potential advantages to having public AIs that are transparent and accountable. For example, if the public is aware of how an AI is making decisions and what data it is using, they may be more likely to trust and use that AI. In contrast, if an AI’s behavior is not answerable to the public, it may be viewed with suspicion or mistrust.

Furthermore, there may be legal and regulatory requirements that make it necessary for some AIs to be transparent and accountable to the public, such as in cases where the AI is used to make decisions that directly impact people’s lives, such as in healthcare or criminal justice.

Ultimately, whether public AIs that are required to abide by fair and transparent algorithms are at a disadvantage compared to other AIs will depend on the specific context and the goals of the AI system. However, it is generally believed that promoting transparency and accountability in AI development and deployment can help to build trust and ensure that these technologies are used in an ethical and responsible manner.