Sun Nov 15 2020 13:11:47 EST from warbaby @ Uncensored Subject: re: "like", "upvote", and other features...

You raise some good issues, and I don't think 'liking' or 'voting', goes against anybodies sacred beliefs. Some conversations lend themselves things like that. 

[I myself was thinking recently, Citadel could use some a project management feature.. <project><task><status> .. so, I thought about writing a new module for that.  Then I though we should have better examples of writing modules, in case people want to write one, so then we're just back to the documentation project. :) ]

The goal is freedom and free speech, not necessarily for or against features.

There's nothing wrong in wanting something more like twitter, or facebook to create a community.  Citadel in fact, even has the largely unused feature of message expiration, which can allow it to be configured to be more ephemeral like reddit, or 4chan where posts expire and disappear (or get archived) over time. With relatively little effort, you could turn Webcit into a 4chan clone..

The question of votes/likes is who would write it, and where would it be implemented.  In Citadel itself, it would require a key/keys to store votes/likes under, and a sorting function for messages which doesn't exist yet, and some additions to the webcit interface.  How far do you want to take it?  All the way to the text client?  Then that also would need to be updated.

It's also something that can be done in other client systems, and I think that's where things are headed.  Through things that connects to Citadel through a protocol, or API, or something that Citadel exposes as a feed.

There are a lot of interesting questions which should be discussed. There will always be a feature du-jour.  But, how true should Citadel stay to it's origin?  It was a simple text-based bulletin board, which later developed the ability to send emails.  But true to the unix design philosophy over the years, the Citadel project has been open to integration with many different kinds of systems.. hence the "Groupware" appellation. Therefore, when we talk about these things, we should be thinking about the lower-level architecture, and what belongs in Citadel, and what can be handled by a connector.

For many installations, Citadel is just a mail server. A great deal of effort has gone into that, and we should respect it.  There should always be a path for someone to quickly build a mail server from the command line. There are many of these in use for both business and personal needs.. Any differentiation here could be reflected as "Themes".. (currently, files in static, or static.local) For a Business/Personal or Community look and features. This is almost a must, and something I'm currently working on.

I'm thinking more and more, Citadel has the potential to be the powerhouse back end for many different things.  What we really need work on is the json/_javascript_ API, and the various "diaspora" protocols. PubSub/Activity Feed and things like that, as Art has pointed out.  Citadel itself is largely okay.  But the growing scarcity of c programmers is going to make the addition of features like this hard to accomplish.  If anything, we need more convenience methods or a scripting language.  Citadel is lacking in middle-ware to implement business logic outside of the core. 

I have a lot of thoughts about this, possibly an nginx-citadel module, that lets you implement things in Lua, or php or something.   Maybe just a library of convenience wrappers to make the C more accessible to less experienced programmers.

We also don't have to mistake Webcit for Citadel.  There are so many things which can be done.  It's just a matter of understanding whether we are inside, or outside.  [By this I mean things like static site generators, to generate websites based on a whole system, or user/blog posts, by just iterating through blog posts and writing them out somewhere. ]

Also, XMPP Integrations shouldn't be overlooked.  It ain't perfect as protocol, but still has a lot going for it.  Mainly lots of users and clients.  

One way would be to expose Citadel (Rooms) as a Component (MUC Component) as an option to using the internal XMPP server.  This would open the door for a lot of cool things, like phone calls, and video conferencing, without the hassle of keeping up with XMPP and rewriting erlang or lua code in C, since there are already mature XMPP servers out there..

The Tech Giants have shown their desire and ability to censor, so it's all hands to the battle stations.  It's time for the Federation of all free systems..

Feel free to jump in, get involved, and help out.

Also, don't underestimate your programming ability until you've actually tried.  If you've programming anything, it's probably not beyond you. 

Mostly it's just an investment of time..

 


I'm actually an original old school Citadel user. I would prefer it to be *just* like an original text based Citadel experience. But I'm a realist. The reason that this kind of BBS experience died out is because it is difficult to compete with modern forums, even Usenet - for mindshare. The ironic thing is that Citadel started out as an attempt to create a room based MUD style fantasy gaming experience - and instead found a niche as a conversation-forum based telecommunications platform. That in turn caused a cascade of evolution - with many Citadel users being early adopters of Usenet, then forums like The Well, and eventually among the earliest adopters of emerging social media platforms like MySpace, Digg, Facebook and Twitter. 

And like personal electronic devices - as the experience became more accessible with fewer barriers to entry, less thought required in being an engaged part of the community, those communities grew. So, the goal in being a sysop of a bulletin board system is to create a community of people with the same interests, or at least willing to engage in debate about similar interests. In that spirit, I think the web based version of Citadel already takes a step in making the Citadel experience more accessible with less intellectual effort than Citadel and like platforms of the past. It is an easy, internet-appliance-friendly version of Citadel with pretty pictures and a nice graphical layout and familiar buttons instead of obscure "dot" commands. Citadel is the reason Linux never seemed super threatening to me. There isn't much difference between editing xconfig86 config files and editing ctdl.cfg files, including the crude text editors using weird ctrl characters necessary in both cases. To me, this means that Citadel *probably* attracts a lot of "if it can't be done from the command line, it isn't worth doing," crotchety old-school *nix users - most of whom probably still remember CP/M. I still remember when *I* preferred a CLI to a GUI - and I do know that there are things that are easier done in a command line than from the GUI, though these things are becoming exceedingly rare. But it seems to me that if Citadel is going to be all-in with a web client - it will help attract new blood to give the web client the things that modern users expect. Seamlessly sharing endless streams of images from a mobile device to a central location where friends and family can see it and respond with a thumbs-up seems a critical component of that. While I understand that adding those kind of features makes Citadel in a sense just another Instagram or Twitter or Facebook. But personally, I think it would be a benefit to society if there were 10,000 decentralized, individual, community tailored, independent versions of these platforms rather than 3 or 4 that dominate the entire market - and I think Citadel *could* be the spark that starts this kind of fire, for the second time in its existence. 

A lot of the specific technical things you mentioned were way above my pay grade. I understand *conceptually* what you're talking about at a very high level. But other than php, json/_javascript_ - the rest of it was mostly greek to me. I know that nginx is a thing. I don't really know what that thing is. 

As far as programming - I was a gifted kid, in accelerated learning. I think it was around 4th grade where I would turn in math assignments, with just the calculated sums. The teacher would fail me for not showing my work. I didn't understand what that meant, because I knew the answers were right, and I just knew the answers. I couldn't tell anyone how I knew them. There was no work to show. So, they accused me of cheating and my parents said, "nope, we watch him. He just writes down the answers. We've checked his work, we know the answers are right. It is a little creepy. We agree." So, they tested me aside, and gave me pretty high level math that I hadn't been exposed to, and then the teachers gave me the same kind of look my parents gave me. Then they put me in GATE, (which was MGM/CAP at that time). And that was a disaster for almost every gifted student ever put in the program. But that is another story. Anyhow, they told me I had to learn how to show my work, and began to teach me - and the more I learned about showing my work, the *worse* I became at math. The more I was bogged down with all these rules that I had to consciously think about and the worse my scores on math tests became - the more of a chore math homework became, the more I began to hate math. 

Long story short - the great thing about VBA in an access database - is that as long as there isn't anything being calculated in any of the tables, I don't need to know any formulas, and because I basically stopped learning math in 6th grade, I'm *really* not good at that sort of thing. 

As an adult student I'm consistently a 4.0 kind of guy, although I've never completed a degree. Learning Spanish as an adult was difficult, but I started to develop methods for learning complex things that worked in these classes, because I knew it would be an uphill struggle. I can stumble through speaking Spanish with the ability of a 3 or 4 year old with some traumatic head injuries. In a pinch, I can get the idea across, and probably understand most of what is being said back to me. At my best, I was semi-fluent. That gave me a lot of confidence, and during the Covid lockdowns, I taught myself guitar. I knew some basics as a kid, little pieces friends had taught me of various songs that would impress girls at parties. But this time, I sat down and with Youtube I've become good enough to carry a campfire through a little set of sing-along strummers. I'm confident that I can learn the majority of songs within a couple of weeks of practice, and easy songs I can pick up almost immediately now. Access VBA was kind of the same thing. By the end of it, I recognized the code and what it was doing and it was clicking for me and my mistakes were popping out at me - a lot like Spanish. 

But the challenge in all of these things is the pre-requisites that are really learning an entirely separate pre-requisite in order to even understand what is being described in what you are learning. When they got into parts of Spanish and I didn't really understand what they were in English - it is hard to learn something if they can't describe what it is in something you already *know*, right? The same thing happens to me with programming - I get the concepts early on, but once you get into the more complex math parts... I know what I don't know and that to be good at the one thing, I have to be good at the other. 

So, I've failed at multiple attempts at Java, C++ and other coding languages. But if you think there is one I should give a shot, let me know. If there is a Udemy class, I'm willing to throw $10 and 40 hours at trying to learn it. I have a lot of hobbies at this point, though - so I'm running out of time to do all the things I want to that I am passing good at. I'm going to have to start picking where my passion is and recognizing that I'm not a savant who can do ALL the things I find interesting and rewarding. 

I also have learned that it pays to have multiple different instructors teaching you the same thing. Sometimes the way one instructor presents something leaves me totally bewildered, and the next one is like a beam of daylight shining through the darkness, on the exact same subject. 

I'm a pretty good writer, and good at writing tech documents. I already wrote and published one on using the easy-install of Citadel on rPi - so, I'm not opposed to contributing where I can. I'm a great technology evangelist. I was a regular content contributor for Tech Republic at one point, writing HowTo documents and the primary Verizon Android reviewer for them - but there was a shakeup at CBSi and... well, Jason Perlow of ZD-Net and Robert Scoble have both told me personally that I would get tech writing gigs if I just stopped posting my political opinions online. Not something I was willing to do. 

But really, as something of a technology evangelist, I think I see a lot of potential for Citadel to fit a niche for "side-nets" and grow that niche to a significant share of the market - and I think it is something more and more people are becoming receptive to - as they become increasingly alienated from the mainstream social media sites. Citadel was *never* an echo-chamber - but I feel like the alternatives to Twitter and Facebook - places like Gab and Parley - are just mirror echo chambers for the opposition. People want community where they're exposed to competing ideas, not echo chambers where all they hear are things that reinforce what they already believe is true. I think Citadel can be that thing - or at least the fuse that lights it. 

 

 

Reply via email to