Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    rob-for-gitter
    @rob-for-gitter
    I see. Yes, there's nothing tricky about that. It means changing a single max-width rule in the theme's stylesheet as-is.
    Steven Rosenberg
    @passthejoe
    I like the big body type -- it stands out. The thicker serif fonts are nice
    Steven Rosenberg
    @passthejoe
    Here is the "Get Pocket" home page that leads to more stories in this style: https://getpocket.com/explore/trending?src=top_navbar
    I'm not as crazy about the home page as I am the individual items
    john henry
    @john_henry_twitter
    @rob-for-gitter @robreed_twitter it probably doesn’t have credentials beyond the Twitter OAuth.
    I’m still unsatisfied with my WordPress install. I think I don’t like how WP handles adding functionality, and the close coupling of design and functionality within the theme. I have an old site which broke under php7 and I finally had to update the theme major version, and I really dislike that every design agency puts in a custom admin area for their theme.
    john henry
    @john_henry_twitter
    I think I’d like to see a three part division of responsibility: a “style”, a “genre”, and “plugins”. Style would simply be the appearance, fonts, colors, etc. Genre would be most of what makes up a theme, and the “type” of site whether it be a blog, pages, or something more custom. Plugins would simply add functionality. Ideally they would all be tested and fully interoperable.
    This would address some of my frustrations trying to use Hugo as well, everything is either just the base framework (e.g. templates, routing) or highly theme-specific.
    rob-for-gitter
    @rob-for-gitter
    This is a lot like the way Ode works. A theme is a folder. That folder contains plain old html, css, javascript along with images and whatever else you want to include in your theme (icons, other design assets, etc). You can have as many of those themes as you like. One of the default and any of the others can be explicitly called as part of the URL. If I had a theme called "coffee" that was not the default then I could render a page using the coffee theme with an address like ode.io/some-category/post-name.coffee.

    "Functionality" is not munged together with themes.

    Extensions, called addins, are just a standalone folders containing a perl script. They are explicitly ordered by the site maintainers (literally you tack a number on to the addin folders name. So the Indexette addin running at ode.io is installed as 04Indexette. Ode recognizes a number of a number of addin routines:

    01. inventory_ping_response,
    02. replace_discover_posts,
    03. replace_find_req_theme,
    04. replace_interpolate,
    05. replace_posts_sort,
    06. manipulate_request,
    08. pre_filter_posts,
    09. filter_posts,
    10. access_head_theme_early,
    11. access_date_theme_early,
    12. mod_post_file_before_read,
    13. access_title_tags_and_body_early,
    14. access_posts_theme_early,
    15. access_foot_theme_early,
    16. access_page_late,

    Any addin can implement any or all of these routines. The only one required is inventory_ping_response. Ode runs through the addins directory and for each addin it finds it calls the inventory_ping_response routine to ask the addin if it should be run. If yes, Ode remembers which of the other routines are implemented. As Ode runs it gets to the point where all of the manipulate_request routines for example should be run. It then calls the manipulate_request routine for each addin that includes one in order. Each subsequent addin is unaware that earlier addins have run. There is no intermixing of addins.

    It is true that there can be conflicts. For example replace_posts_sort changes the way that Ode sorts all of the posts for the site. If you had two addins installed both implementing a replace_posts_sort routine, the last one would win. The first one would change the sort routine, and the next would change it again, and then the posts would be sorted.

    That's about it.

    Content is stored in plain text files organized into folder hierarchies, just like a static site. The only difference is that the post files are just content, not all of the HTML that forms the framework of the page (duplicated for every file as you'd have with a static site).

    Themes are separate from content. The posts are plugged into the theme.

    Addins are completely separate. There are no references to addins in themes or vice versa.

    It could be that an addin requires a specific theme be installed (along with possibly many others). For example the editedit addin allows posts to be edited in a browser. It comes with it's own theme that includes the form fields necessary to input the changes. So the theme is the interface for the addin. But then that special theme is just part of the addin.

    As for Wordpress. I don't like it. :)
    john henry
    @john_henry_twitter
    big thumbs up to all of that!
    looks like ode.io is down in case you haven’t noticed.
    rob-for-gitter
    @rob-for-gitter
    Yeah, the I let the domain name lapse. I hate paying +$30 for these .io domains. It should be back up shortly.
    rob-for-gitter
    @rob-for-gitter
    OK I renewed it. It should come back shortly.
    Steven Rosenberg
    @passthejoe
    I'm too cheap for .io
    rob-for-gitter
    @rob-for-gitter
    :point_up: July 26, 2019 5:44 PM I know what you mean @passthejoe. :\
    john henry
    @john_henry_twitter
    Hey @rob-for-gitter , is there an alpha in a usable state? I’d love to download and tinker with it if so.
    rob-for-gitter
    @rob-for-gitter
    I'll get you a link tomorrow. For now, I just wanted to let you know I wasn't ignoring this. Time for bed.
    rob-for-gitter
    @rob-for-gitter

    Here you go @john_henry_twitter https://ode.io/downloads/ode_releases/ode_current.zip

    I wouldn't call it an alpha. It's the old version. It should work fine. There are detailed instructions included. You should only need Perl to get it going. Let me know if you have any trouble. Once it is running it shouldn't give any trouble. The few installs that are out there have been running for years.

    john henry
    @john_henry_twitter
    Thanks @rob-for-gitter , I poked around on archive.org for ode.io and couldn't find it. Looking forward to tossing my only wordpress site next week...
    rob-for-gitter
    @rob-for-gitter
    If you have trouble, let me know. Also that won't include the default responsive theme. I'll get you a link to that.
    Steven Rosenberg
    @passthejoe
    Ode-driven microblog is now past 2.5K posts: http://updates.passthejoe.net/
    rob-for-gitter
    @rob-for-gitter
    That's very cool! Thanks for the update @passthejoe.
    Steven Rosenberg
    @passthejoe
    I'm migrating a site from one shared host to another. I'm having a problem with Indexette (it stops the script before any posts are rendered). It took a few days before I figured out where the problem was coming from. First I'll check permissions.
    Steven Rosenberg
    @passthejoe
    It was directory ownership. I needed to put /addins/state/Indexette in the Web group.
    rob-for-gitter
    @rob-for-gitter
    Yep that makes sense. It has to write that file(s) so requires write permissions to the Indexette directory. In general you should expect an addin that uses a state directory like that to require write permission to it's own directory. (But not the state directory itself.) The only thing that should ever access those individual state directories is the addin itself. That is assuming no one modifies the addin or script. So the addin and the script are in other directories, without write access and are (should be) themselves not writable.
    Steven Rosenberg
    @passthejoe
    When I moved the site, the directory ownership didn't stick.
    Steven Rosenberg
    @passthejoe
    Ode site with nearly 3K posts: http://updates.passthejoe.net/

    This site moved. At NearlyFreeSpeech.net, you don't need to buy a domain. I'm using the default domain to experiment with https w/o having to deal with certs:

    https://stevenrosenberg.nfshost.com/blog/

    rob-for-gitter
    @rob-for-gitter
    It's not slow. That's not surprising. But I'm reminded that Ode would be appropriate for lots and lots of sites.
    The goal is to rewrite it without changing how it works, adding a couple of features to the core of the script. Doing a Perl and JS version.
    I'll feel good about that.
    Steven Rosenberg
    @passthejoe
    I think the Perl file handling is very robust.
    Steven Rosenberg
    @passthejoe
    I'm showing 60 posts per page on the microblog. I could probably do many more and not slow it down too much. I was self-hosting it on a Raspberry Pi Zero for awhile, and that did slow it down. Now that I have a regular host, it's much faster.
    rob-for-gitter
    @rob-for-gitter
    Perl is very robust.
    There are a bunch of different ways Ode could be optimized. That would be fun, tweaking it to make it faster and more scalable. I'm sorry I haven't gotten around to it.
    Steven Rosenberg
    @passthejoe
    rob-for-gitter
    @rob-for-gitter
    Looks good. 🙂
    Hey, while we're here. If someone were going to create a blog platform just like Ode in plain vanilla Javascript, what's the way to do it that you wouldn't regret in 6 months? No frameworks please, just enough to plug into a webserver and deal with files. Asking for a friend.
    Steven Rosenberg
    @passthejoe
    I really don't know much about Node-based web servers, but there must be a whole lot to choose from. Otherwise, maybe there's a SMALL web framework. I'm definitely not a JS expert. I will be thinking about this. Nowadays everything bloggy is a static site generator, and I think there's a missing niche for a dynamic JS-based blog system.
    rob-for-gitter
    @rob-for-gitter
    No surprise that I agree. There's a lot something like Ode could be, beyond "blogging", just by changing up the theme and other similar customizations. It's a very useful tool.
    robreed
    @robreed

    Just wanted to let this group know that ode.io is going down for the time being. I don’t know for how long. There’s no problem. I just need to figure out how to do it more actively or relaunch the site to be something that makes sense.

    If anything I like ode more than ever. So I don’t just want it to sit there.

    I’ll be here on Gitter
    Happy to talk.
    Steven Rosenberg
    @passthejoe
    One thing missing from almost all blogging software is built-in commenting. I think that's because the problem is a hard one.
    robreed
    @robreed
    I'm not sure that I think commenting is that hard for what it needs to be.
    IMHO Twitter sucks, and services like it are illusion. I want to like mastodon but it doesn't take much to make me see the problem with it. So that takes me back to the open web, individual sites, and genuine communication and communities of people not profiles.
    robreed
    @robreed
    I want Ode in a container, running from everything from a generic hosting provider to a USB stick or Raspberry Pi. I want someone in a train riding across the country without internet access writing and then having the same content, or select content, popping up on a public website when they can do that.
    If I wasn't so paralyzed with thinking I need to make the thing JS I'd have rewritten Ode in Perl again already. That isn't a knock against JS at all.
    Steven Rosenberg
    @passthejoe
    I'm not as much of a JS cheerleader these days.
    robreed
    @robreed
    Why's that?
    Steven Rosenberg
    @passthejoe
    I'm turned off by the frameworks and the complexity of the build systems.