Open Source Alternatives

I don’t know if it is possible at this point in time to avoid working in Microsoft applications. Given how many organizations now have some version of Office 365, it seems like all outputs are eventually a Word document, a PowerPoint slide deck, or an Excel spreadsheet. But those are outputs, not throughputs, and I don’t think any of those applications is terribly good to think with. Communicate to/with others who are used to things being packaged in a particular way? Okay, fine, here’s a Word document.

The process involved in getting to an outcome should be more flexible, more tuned to how individuals and teams work. For the record, Teams works well enough, but OneNote is a disaster. Personally, I use Devonthink and Scrivener for the iterative process of bigger projects, but neither of them is team-friendly. And neither is really all that iPhone-friendly, really. They have iPhone apps, which are really quite functional, but the true power of both apps is really best experienced on the Mac. (I only use two devices: a Mac and an iPhone, so the iPad version of both may very well be an incredible experience, but I decided a while ago that my version of techno-minimalism meant I only ever worked on, and worried about, a computer and a phone.)

The problem, for me, is that collaboration needs to occur across platforms, so it looks like I am stuck with web apps. That noted, there appear to be a range of open source alternatives that look pretty good. BTW has collected over 200 open source alternatives to a range of software tools that businesses use: from note-code databases to note-taking to kanban.

The Internecine Project

Any number of films have left lasting impressions on me. Certainly some have gone onto shape my imagination in various ways. A lot of them are films that I watched with my father, like The Man with No Name trilogy that featured Clint Eastwood, or any number of WW2 films — Kelly’s Heroes or The Dirty Dozen or The Longest Day to name just a few — that shaped the fiction I read and the movies I watched as I grew older.

Then there are the films I found myself and watched, some of which were either “made for television” or found their only real home there or on the nascent cable television channels. The Blonde with One Black Shoe certainly falls under the latter category, as does a host of British, or near-British, spy thrillers. Like the Harry Palmer trilogy, the original Italian Job, or The Internecine Project, a film that stayed in my head for as long as it has because I loved its hammered dulcimer soundtrack so much that I recorded it as it played on air onto a cassette tape which contained a host of other favorite soundtracks, most of which I can no longer remember.

It turns out that The Internecine Project is not only watchable again on Youtube, but its soundtrack is available on Apple Music.

Terry Talks Movies

I don’t know how the Youtube channel Terry Talks Movies made it into my stream, but it did and it’s turned up a number of older movies to watch. In a review of “1960s Science Fiction Movies You Should See,” Terry observes the following about the protagonists of Privilege, a film he describes as a didactic docudrama (worth watching):

They are innocents in a world where predatory men are turning the passions of young people into social cages in which to enslave them.

Hello world (again)!

New possibilities and new horizons do not necessarily demand new infrastructure, but in this case my first shared hosting provider, A Small Orange, was long ago sold to a mega-provider and the prices have gone up while the services have somewhat declined. When I asked about alternatives, one hosting provider, CynderHost, stepped forward and invited me to try them out. So far, I have liked what I have seen, and it was time that I moved, if only to re-learn some of the basics of hosting and also to have a sense of what it is to move and what all needs to be moved. There are bound to be some hiccoughs along the way, but, in the end, you might as well embrace the change. It’s coming anyway.

Weathering the Pandemic

Helene Meyers on How small liberal arts colleges can best weather the pandemic (opinion):

Small liberal arts colleges focus on low faculty/student ratios and small classes that allow meaningful mentoring relationships with faculty members as well as peer education. What if a British-style tutorial were part of every first-year student’s experience? Among smaller groups, meetings powered by Zoom can foster intellectual community, while online discussion forums can require students to respond to one another’s writing. Many faculty members at liberal arts colleges have the pedagogical chops to do this work well. Colleges that can clearly communicate that such high-quality experiences can be expected in person or at a distance are more likely to be able to recruit an incoming class.

Intensive research seminars where faculty-guided independent work is supplemented with a cohort of peers who can help vet one another’s projects and learn to ask (and answer) critical questions about both the research process and its products should be provided for upper-class students. This seminar could be a prelude to capstones in the major or to other high-impact experiences such as internships. Such offerings would be in keeping with and an extension of research opportunities already on offer at many liberal arts colleges.

Some students might elect to study pandemic-related topics in an effort to process the experiences of this moment. Others might need to lose themselves in a passion that seems distant from the horrors of the present. Enabling students to make their education their own is a hallmark of the liberal arts experience, and additional intensive research and writing experiences can aid emotional and intellectual development during these unprecedented times.

Liberal arts colleges should also use this moment to integrate career coaching throughout the curriculum. First-year tutorials and research seminars are the perfect places to do some of that work. The next few graduating classes will be entering a brutal job market, and we owe our students careful instruction in the development and transferability of marketable skills.

Useful Pandas Posts

Please note that this post is, yes, “under construction” as I compile various notes from across my file system and decide what’s worth keeping here and what’s going into the virtual trash bin.

If, like me, you are not very familiar with R and thus you do not readily grasp how pandas brings much of R’s coolness to Python data analysis workflows, then having the occasional overview and/or cheat sheet on hand is useful.

For overviews, I found the following really helpful in understanding how pandas organizes data and the methods available for working with it:

For quick tips that border on almost being cheat sheets, there is Chris Albon’s “Technical Notes on Using Data Science & Artificial Intelligence to Fight for Something That Matters”, at the bottom of which is a compendium of great tutorials and tips on using pandas. (And as you scroll, you glimpse a lot of other really useful stuff as well.)

Science Fiction Stories by Keith Laumer in the Public Domain

If like me you found yourself very excited by the news on Boing Boing that possibly as much as 80% of the books published between 1924 and 1963 might now be in the public domain thanks to their copyrights not being renewed, then like me you also clicked on the links to the New York Public Library’s explanation as well as Leonard Richardson’s discussion. What was most exciting, to me, to discover was that a fair amount of science fiction from that period, which includes the so-called golden era, might be in the public domain.

That’s the good news. The bad news, or the news that requires patience, is that you still have to track down that work, much of which hasn’t been scanned. Some of it has been scanned, and is possibly available through the Hathi Trust, but it hasn’t been OCRed and curated into clean digital versions. But some of it has, and in the case of some work by Keith Laumer, a favorite of mine, it’s available on Gutenberg.

The list of texts is all sitting on one page, and it’s only 12 works, so writing a BeautifulSoup script seemed like overkill, especially when my preferred plain text note application, [Bear][], does a terrific job of turning HTML into easily edited markdown. From there, I edited the URLs following the pattern I gleaned from one of the texts using Textmate’s block edit functionality. I got the following list:

http://www.gutenberg.org/cache/epub/51258/pg51258.txt
http://www.gutenberg.org/cache/epub/53132/pg53132.txt
http://www.gutenberg.org/cache/epub/51509/pg51509.txt
http://www.gutenberg.org/cache/epub/51712/pg51712.txt
http://www.gutenberg.org/cache/epub/51267/pg51267.txt
http://www.gutenberg.org/cache/epub/26782/pg26782.txt
http://www.gutenberg.org/cache/epub/51781/pg51781.txt
http://www.gutenberg.org/cache/epub/21627/pg21627.txt
http://www.gutenberg.org/cache/epub/23028/pg23028.txt
http://www.gutenberg.org/cache/epub/52844/pg52844.txt
http://www.gutenberg.org/cache/epub/52855/pg52855.txt
http://www.gutenberg.org/cache/epub/21782/pg21782.txt

I saved it to a file, cded into my texts repo and ran wget:

wget -w 2 -i ~/Desktop/laumer.txt

A half minute later it was done:

FINISHED --2019-08-14 19:01:18--
Total wall clock time: 24s
Downloaded: 12 files, 1.2M in 1.4s (874 KB/s)

You can do the same, or you can grab the collection of plain text files out of my GitHub texts repo: Laumer stories.

Thanks for coming to my TED talk

If you’re curious about what I have been up to, it’s working with Katherine M. Kinnaird: “TED talks as Data” is the first in three planned installments of our collaboration — data, words, discourse. In the mean time, as they say, “thanks for coming to my TED talk”:

HTML to PDF

In an ideal setup, my workflow would have me writing in some version of plain text — a flavor of markdown in all probability — that could be quickly and easily outputted to a variety of formats and media. In most instances, that output gets printed, or at least paginated, which means it probably has to, at least for a moment, be instantiated as a PDF. (If I remember correctly, this is essentially how the macOS display and printing system work.) What that would mean would be a collection of CSS files that transformed the generated HTML into the various kinds of documents I regularly produce: essays, reports, letters, lectures, etc.

This function is what the Marked app does and does well — it’s also functionality built into the Ulysses app if I remember. Neither of those apps, I believe, offer pagination, which is often critical to what I output. And so, I have continued to search for my own solution in hopes of building it into a workflow — for the record, when I am working on long-form plain text, my editor of choice is FoldingText because it does a brilliant job of hiding the markdown unless you are working on that sentence and, as the name implies, it makes it possible to hide all but the section of the document on which you are working. It’s brilliant. (To be clear, I am a fan of all the apps mentioned here and of their developers.)

Getting from plain text via markdown or MultiMarkdown to HTML and then pairing that HTML with a page-media aware CSS file and then outputting to PDF is not as easy as it should be. The one app of which I have been aware up until recently was PrinceXML, which its creators have made free for non-commercial use, but with the imposition of a small watermark. That’s very generous, but it’s not quite what I want and I don’t have the kind of money to afford a desktop license.

And so it was a delightful surprise to discover that there are free software options to explore:

  • wkhtmltopdf is an “open source (LGPLv3) command line tools to render HTML into PDF and various image formats using the Qt WebKit rendering engine. These run entirely headless and do not require a display or display service.”
  • **WeasyPrint is a “visual rendering engine for HTML and CSS that can export to PDF. … It is based on various libraries but not on a full rendering engine like Blink, Gecko or WebKit. The CSS layout engine is written in Python, designed for pagination, and meant to be easy to hack on.”

Next up … trying WeasyPrint and an update/report here.