Finding voting records on your state representative

Recently, I wanted to get information on the voting record of my representative in the Oregon House of Representatives. Oregon does have an online portal (Oregon Legislative Information System) to allow people to investigate legislation and voting records. From review of the online interface, it was easy to search for bills by bill number, and to get various information on those bills, but I did not see a way to get the voting record for my representative.

Fortunately, OLIS has an OData API to be able to create queries and get data from the system. Together with Claude Code, I was able to create several Python scripts to be able to get the voting record for a representative (House or Senate). I am linking to these scripts as Gists on Github for now, I am not sure yet if I want to create a repo for them. However, they may help others to have some examples to start their own investigations.

A reason why RSS feeds can’t be read from news websites

I saw this post (via Dave Winer) about issues with the ability of feed readers to read feeds from websites hosted by or using Cloudflare. I ran into this problem in trying to access feeds from the Seattle Times website (eventually had to use Playwright to act as a web browser to download the files). This is especially sad for the Seattle Times, since it runs on WordPress. However, it is good to see this confirmation of this problem (interestingly, it was posted in 2024).

Thoughts about “working together”

Today, Dave Winer talks about “working together”, and how he wants to work with other people. The bug in this statement is that Dave Winer deletes things from sites he provides for others to try out his tools, talks about “spam” posts (which is his word for someone trying to make use of his “flow” to promote their “personal projects”) and how he will “moderate” them, and other abusive behaviors. That turns off users and developers. I have personal experience with this, and reports from other users/developers.

Next, he talks about he wants to work together, but what he gets instead are people (collaborators? partners? who?) who want to be him (what does that mean? does it mean they want to be in charge of the project/control the project?). He talks about how people wanted to take over RSS and OPML. I will give him the benefit of the doubt of his lived experience, but my lived experience of working together with people (mostly working in teams in corporate software development) is that a goal is established, roles and responsibilities are laid out, scope and schedule are defined, and the team gets to work until the goal is met. My observation of the way Dave Winer works is that he controls the project, he does all the development and only changes code in an outliner (although Claude is now a silent partner), will not accept PRs, and gets upset when he ends up being the “only person” answering questions in Github issue repos.

Finally, here is a quote from the “Working Together” post he references in the post above:

Working together means this: If someone else has a good-enough way to do something, rather than reinvent what they do, incorporate what they do into what you do.

So – all of the other chat programs in the world were not “good enough”, so they need to be reimplemented using “RSS 2.0 feeds and websockets” (quote from rss.chat repo README file)

From monitoring the rss.chat and demo.rss.chat sites, I see some of Dave’s former co-workers/collaborators are building some things to work with rss.chat. Hope that works out for them!

Podcast about using formal methods in software development

Hillel Wayne explains why formal methods like TLA+ matter, how they help build reliable software, and whether AI will finally bring formal verification into the mainstream.

I enjoyed listening to this, I am planning to watch the video since Hillel Wayne shows some tool demos. I have not used formal methods in my career, but I did investigate them, and did play with TLA+.

Regular podcast and transcript/summary also available at The Pragmatic Engineer.

New OPML viewer now available

Recently, I was doing some work to make sure that the OPML files I created using Drummer and available via Drummer were available from my site instead of drummer.scripting.com. My initial effort was using code from the outlineBrowser2 and opmlPackage repos from Dave Winer. After reviewing the code, I felt that I could focus more on using the outlineBrowser2 application. I also wanted to remove dependency on jQuery and any other hosted files (got Claude to help me with that….).

My updated viewer is now available on Github (opml-outline-viewer). The README file covers how to use the viewer to view multiple files. The rendering of the OPML file bolds each top-level headline, and uses triangle icons to expand/collapse outline elements. The default is to render the file with all headlines expanded. There is a function that allows the user to modify this behavior in code.js (collapse_everything), which is currently commented out.

Give it a try – let me know what you think!

Archer Aviation acquires Wisk, Skygrid, and InSitu from Boeing

LinkedIn: Wisk CEO Sebastian Vigneron announces deal

Archer Aviation: Press release

LinkedIn: Thomas Wagenberg comments, noting this was a “no-cash” deal

LinkedIn: Ken Morris sees this consolidation as strengthening the urban air mobility sector

CNBC: Boeing sells eVTOL subsidiaries, takes stake in Archer

CNBC: Archer Aviation shares jump 10% on news of Boeing deal

The Air Current: Interview with Boeing/Brian Yutko and Archer/Adam Goldstein

An interesting note from the press release and other coverage used the term “AI”, but this stands for “aircraft intelligence”, not “artificial intelligence” (see press release).

My take: Wisk was still years away from certification and entry into service, Boeing chose this path to keep their hand in the air taxi market, but divested itself of the cost of running Wisk and Skygrid. This is a “good business deal” for Boeing and Archer, but will probably result in job losses at Wisk and Skygrid in areas of duplication.