The prompt says “Start writing” so, sure, I’ll just start writing. I’m on my phone at the moment so writing is me like swiping but it does have a certain cursive feel to it once you get going. Of course proof reading to avoid bad autocorrect is essential. It also helps to have something to say and that’s a bit subjective I think.

What I’m really looking for is whether or not I can post without a title. Sometimes I have an idea but get stuck staring at the “Add title” and lose my inspiration. Not having to think of a title is nice.

Scraping the Teknoids Mailman PiperMail Archive

Putting this here in case anyone finds themselves in need of something to scrape a Pipermail web archive of a Mailman mailing list. This bit of Python 3 is based on a a bit of Python 2 I found at Scraping GNU Mailman Pipermail Email List Archives. The only changes I made from the original are to update somethings to work in Python 3. It works well for my purposes, generating a single text file of the teknoids list archive from 2005 to today.

#!/usr/bin/env python

import requests
from lxml import html
import gzip
from io import BytesIO

listname = 'teknoids'
url = 'https://lists.teknoids.net/pipermail/' + listname + '/'

response = requests.get(url)
tree = html.fromstring(response.text)

filenames = tree.xpath('//table/tr/td[3]/a/@href')

def emails_from_filename(filename):
print (filename)
response = requests.get(url + filename)
if filename[-3:] == '.gz':
contents = gzip.GzipFile(fileobj=BytesIO(response.content)).read()
else:
contents = response.content
return contents

contents = [emails_from_filename(filename) for filename in filenames]
contents.reverse()

contents = b"\n\n\n\n".join(contents)

with open(listname + '.txt', 'wb') as filehandle:
filehandle.write(contents)

My last post to teknoids: He’s dead, Jim. This list is getting a reboot

I just posted to the teknoids list letting everyone know I’m shutting down the list and replacing it with a Discourse forum at https://discourse.teknoids.net/. here’s the text of the post:

As a few of you may have noticed things have been amiss with the list since late last year when Microsoft decided to put the list on some sort of irrevocable ban list. As a result messages are not being delivered to over half of the subscribers at law schools around the country. That’s nearly 300 people. More troubling to me is that virtually no one who stopped receiving messages even appears to have noticed that they aren’t getting messages anymore.

After trying many, many approaches to getting the ban lifted and staring at the apparent ambivalence of the list itself I’ve decided to shut down the list effective immediately. The mailing list has been around for 30 years and I’ve been the admin for many of those, so it wasn’t an easy decision to make. The list will no longer function after 5:00 PM ET today, Monday April 4, 2022.

Of course on the Internet nothing ever really goes away. The list archives will continue to be available. For those of you interested in continuing the conversation, growing the community, or just generally keeping in touch I’m launching a new website called The Teknoids List at https://discourse.teknoids.net/. The new Teknoids List is a Discourse-based discussion forum that is up and running now. I’d like to invite everyone on the list to head on over and create an account. Tell your friends, tell your neighbors, tell your colleagues! With some luck I hope we can grow the new site into the go to place to discuss and discover that latest in tech + legal education.

If you have any questions or concerns please reply to me directly or, better, head on over to https://discourse.teknoids.net/ and we’ll talk them through.

Thanks,
Elmer
Chief Teknoid
https://discourse.teknoids.net/

What to Do With Your Drupal 7 Website | Lullabot

Drupal 7 lives, but it lives only to die another day. So are you going to stay on Drupal 7? The answer, at some point, will need to be a resounding “no.”

Source: What to Do With Your Drupal 7 Website | Lullabot

The WordPress.org Pattern Directory and Creator Now Open to the Public

The WordPress pattern directory finally opened its gates to the entire community today. Anyone with a WordPress.org account can log in, go to the pattern creator, and start designing. For some of u…

Source: The WordPress.org Pattern Creator Now Open to the Public

This looks like a great resource to help those of us who are “design challenged”. Since the patterns are applied at the page level they will help get that final touch in place that is often missing from a theme.

Here’s an example pattern lifted right from the WordPress Patterns directory.

Our Service

Rorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Clean Design

Lorem ipsum dolor sit amet, elit, a sed diam nonummy nibh tincidunt consectetuer adipiscing

Creative Idea

Lorem ipsum dolor sit amet, elit, a sed diam nonummy nibh tincidunt consectetuer adipiscing

Communication

Lorem ipsum dolor sit amet, elit, a sed diam nonummy nibh tincidunt consectetuer adipiscing

Patterns are simply copy and pasted from the directory and then edited locally to your needs. Simple.

Resources on using ddev for Drupal 9 development, Windows edition

Resources

Here’s a list of resources to get you started with DDEV and Drupal 9. As with setting up any new development (or production) environment there are a lot of moving parts and it take some time to get it all right. This list includes “HowTo” articles, tools, and documentation to get it all set up.

Notes

— After running ddev config and before running ddev start for the fist time use your favorite editor to edit .dev/config.yaml to the following:

name: d9-dev
type: drupal9
docroot: web
php_version: "8.1"
webserver_type: apache-fpm
router_http_port: "80"
router_https_port: "443"
xdebug_enabled: false
additional_hostnames: []
additional_fqdns: []
mariadb_version: ""
mysql_version: "8.0"
nfs_mount_enabled: false
mutagen_enabled: false
use_dns_when_possible: true
composer_version: ""
web_environment: []

This will setup DDEV with MySQL 8, PHP 8.1, Drupal 9, and Apache. This matches the dev environment that CALI is using for D9. Check the DDEV docs for more possibilities.

— The DDEV install includes the latest phpmyadmin to help with mysql admin. It’s available in a local browser at <projectName>.ddev.site:8036. Use phpmyadmin to load a dump of the D9 dev database.

— Once WSL2 is setup, use Ubuntu 20.04 to host DDEV.

— DDEV includes git so that’s a good way to manage Drupal. In the CALI world use git to grab a copy of the current D9 code base.

Livewire for Laravel

Livewire is a full-stack framework for Laravel that makes building dynamic interfaces simple, without leaving the comfort of Laravel.

https://laravel-livewire.com/

This looks intriguing. The promise is a sort of shortcode powered ajax interaction for dynamic elements in web pages.

Ratchet – A PHP WebSockets Library

Ratchet is a PHP WebSocket library for serving real-time bi-directional messages between clients and server

Source: Ratchet – PHP WebSockets

Open source – https://github.com/ratchetphp/Ratchet

Set up Home Assistant to manage your open source smart home :: opensource.com


In the first article in this series, I introduced Home Assistant and why you might be interested in it. In short, Home Assistant is an automation hub for some of the most common smart devices on the market today. It enables centralized coordination of disparate hardware. By using it, you no longer have to choose suboptimal tech from a single vendor to manage your smart home from a single app.

Source: Set up Home Assistant to manage your open source smart home

Drupal 9.1.0 is available


The first feature release of Drupal 9 includes the new experimental Olivero frontend theme and various additions to the Claro administration theme. Installer performance is improved 20% and full Composer 2 and PHP 8 support is available. Images with known dimensions are set to lazy-load by default to improve frontend performance.

Source: Drupal 9.1.0 is available

Looks like PHP 8, Composer 2, Symphony 4,5,6 will get us to Drupal 9. Upgrades paths from Drupal 7 are stable.