Blogging platforms

Shameless self promotion here…

For those that like lightweight stuff, I wrote a simple org to HTML parser in ANSI C. It is written using a literate programming style in (you guessed it) org.

You can see a sample of the output here, where it is applied on itself:

http://paulbatchelor.github.io/res/worgle/sorg_toc.html

Here is exported HTML output on the shell script used to generate that page:

http://paulbatchelor.github.io/res/worgle/mkpage.html

For the actual code, Sorg is a part of a larger project of mine called Worgle, a lightweight org tangler for writing literate org mode programs. You can find the code here:

The actual org file can be found here:

2 Likes

Totally fine. Most templates have default index.xml files, but they’re easily generated and customised (as I’ve done - sticking only posts of a particular category into RSS).

Wordpress treated RSS as a kind of special case, it always felt; Hugo is more like Movable Type or Blogger, in that RSS is Just Another Template, and you just code it like you would any old template.

You can stick the header metadata in manually, or using a magic incantation, too, so that’s taken care of.

Long ago I was a professional (ha!) Drupal developer, so I maintained my own personal website with Drupal for a while. Way overkill for simple portfolio and blog sites. I’ve been using self-hosted Wordpress for the last 8 years or so. I’ve never had a problem with security by following all the recommended practices: keep WP and all plugins and themes up to date, use the minimum number of plugins possible for the functionality you need, and delete all unused plugins and themes. (If a plugin’s PHP files are on your server, they may still be exploitable even if the plugin is disabled).

I’m a geek who checks the web server logs several times a week. I am amazed by the number of attacks from script kiddies that come in every single day. I see attacks against WP, Drupal, misconfigured Linux file permissions, and many I don’t recognize. I tweaked my web server configuration (Apache .htaccess file) to add extra layers of security for many common exploit attempts I see. Example: I block all access to wp-login and wp-admin pages (except from my own IP address). I also block access to the wp-json API and xmlrpc. There exist security plugins that will do these things, but that means having more plugins installed that themselves might have vulnerabilities.

After reading this thread I’m likely to switch to a static website generator. If you want a fast website, much of the complexity of running WP is setting up and maintaining the caching infrastructure. Using a static website generator will remove tons of complexity in my configuration around performance and security and backups.

I use namecheap for domain registrations and dreamhost for web hosting. I still plan to use them with whatever static website generator I end up choosing.

3 Likes

Hi!

After seeing some example sites on this thread I decided to go with Cargo as my platform. I’ve created sort of a portfolio website to hopefully help me get a job.

Here it is.

However, I recognize that this works best as sort of a cursory overview of a broad picture of what I do, but not so much as a repository of my actual work. I’ve been doing a lot of field recording lately, and it’s got me thinking I’d like to have some sort of audio blog or something to at least gather them all together into one spot. I currently have about 200 sounds on Freesound. I would like to figure out some way to showcase my audio work.

What would be a good way to do that?

Point of reference: Bill Wurtz’ website

5 Likes

I’ve looked high and low for a good embeddable media player that doesn’t require a 3rd party service. There are certainly a lot of options available but none really provide the same level of quality we’ve grown to expect thanks to the SoundCloud embed. Really curious to hear how folks have addressed this problem.

1 Like

What kind of features are you looking for? For whatever it’s worth source is available for the SoundCloud player here (MIT license). On further digging I’m incorrect about this, it appears that their actual HTML5 audio wrapper is referenced by this project as a vendor dependency (@sc/scaudio-controller-html5-player).

Buffering seems to be an issue. I believe there are both server side and client side facets to the problem, but I’m not entirely clear on the solution. I’d be game to start from scratch if I knew which direction to go in. I’m no stranger to JavaScript. Somewhat related is the ability to smoothly scrub around the track.

Secondarily, waveform display is a nifty feature that I appreciate, although many have commented that both the visual and the ability to scrub have altered our relationship to recorded music. (I just happen to enjoy this evolution.)

If you’re OK with some javascript then HOWLER.js (MIT License) and wavesurfer.js (BSD License) might be worth taking a look at

3 Likes

I knew about wavesurfer, but howler looks like it may be the missing piece I needed, I will dig in and report what I find. Thanks!

Another option for waveform display is something like audiowaveform, which precalculates waveform data in a CLI that lets you then render it however you want; particularly useful if you don’t want to load the whole waveform before displaying it. Not an issue with music tracks, but may become an issue as things get longer.

Buffering is increasingly largely taken care of via the HTML5 specs: eg, for video, it’ll smartly buffer, set off multiple buffers if you scrub around, and happily report on the loading state of each of those buffers. That, combined with support across browsers including mobile ones being largely pretty good, means that a combination of presentational js and audio elements should be enough for most cases, or, at least, as a starting point.

4 Likes

Indeed! Thanks for the recommendation.

Thanks, I was really unclear on this bit.

no worries. happy to talk more via more direct means if you have questions.

I have an idea for a weekly live audio stream that I want to do, with the ability to save prior streams in an archive. I’d prefer to do it on my own site than something like YouTube or Twitch. Does anyone have suggestions for a host/platform that I could set this up on relatively easily?

1 Like

As far as I know, streaming yourself would be near impossible depending on the volume of viewers. If it were me, I’d probably go with something like Vimeo Streaming over Twitch or Youtube, though there aren’t exactly a ton of options.

1 Like

icecast? (or bigger package like azuracast)

as noted, bandwidth is a serious issue.

2 Likes

Streaming is something I’ve talked about with @dailybells a few times. I wonder if he has some suggestions…

(Edit for handle confusion)

1 Like

Not as open source and DIY as the platforms mentioned in this thread, but it’ll be interesting to see what Wordpress does with Tumblr.

My preference for this is icecast + liquidsoap + flask for the web frontend-- if you’re comfortable with installing things on a linux server and a little bit of scripting… and wobsiting. Rolling a simple homebrew setup isn’t super crazy all things considered but it might be a pain in the ass depending on how comfortable with linux & web stuff you are – there are a fair number of moving parts for setting something like this up. That said the most basic setup could look something like:

  • icecast for the stream itself
  • if you don’t care about “dead air” when you’re not live, then just skip liquidsoap, otherwise you could have a 5-10 line script that loops a playlist when you’re not live
  • an HTML page with an audio element pointing to your icecast mount
  • another HTML page with links to mp3 files you upload to a public directory on the server (and record yourself while you’re live – automating that with liquidsoap is also possible but a bit more complicated)

Bandwidth-wise, these guys are great:

The $5/mo virtual servers come with 2TB/mo bandwidth which should be way more than enough to start. If you blow up they have affordable servers with as much as 100TB/mo too.

The popular wordpress-like system is called “airtime” and its open source equiv is “libretime” – they’re both good, and many radio stations use them, but you might find you’ll need to spend just as much time configuring them as you would just rolling something simple like I described above. Both are based on liquidsoap, and can be extended with liquidsoap scripts, but they come with a web-based admin UI and calendar system etc, aimed at the needs of a typical radio station.

Otherwise I’ve seen hosted services that might be worth a shot, but if you want to host it yourself (go for it!) I really think a simple setup like icecast + liquidsoap + html is the way to go.

I started a thread to discuss this a while back if you want to get more into the nitty gritty over there: Web Radio Broadcasters

5 Likes

Came across this self-hosted wiki tool the other day, I’m really into it. I believe it’s a conceptual derivative of @neauoire’s Oscean (which is amazing but over my head).

The engine is called Purity, by Victor/vi/V-OS, and uses .txt files, which are then parsed and rendered in a standard HTML/CSS format. You can ‘automatically’ interlink files using a markdownesque convention of symbols and brackets in the middle of text. So writing #[music] in the middle of a sentence would automatically create a link to music.txt, if that file/page exists.

I’ve been using it to put together a personal wiki / commonplace book, really enjoying it’s slight esotericism and constraints as a way to drill into the connective tissues between different ideas (wiki style).

Here’s an excerpted summary, from the readme.md:

Text files written in the appropriate format are parsed through Purity 's multi-layered parser into PHP objects called artifacts . Each artifact corresponds to a page, and once populated, is parsed into its html counterpart.

In short, Purity is a single-template content management system, made for (me, but also) programmers / people minimally experienced in web dev who:

  1. Don’t want to deal with creating their own parsing system.
  2. Want to create a wiki-site / have a consistent page layout.
  3. Want to use a lightweight, simple system.
  4. Want to retain control over how things look and behave.

Recommend giving it a spin!

3 Likes

Hey Vi’s a friend of mine! Purity is pretty much a static php version of Oscean, or at least how Oscean used to work. I’m happy to see you using it!

1 Like