summaryrefslogtreecommitdiff
path: root/memos/WM-033.txt
diff options
context:
space:
mode:
authornetop://ウィビ <paul@webb.page>2026-04-11 14:24:49 -0700
committernetop://ウィビ <paul@webb.page>2026-04-11 14:24:49 -0700
commit8c34d810af95fae0ef846f54370a8c88bfab7123 (patch)
tree436beaf30f7b2b3f15741dd54a37e313964d1f7d /memos/WM-033.txt
initial commitHEADprimary
Diffstat (limited to 'memos/WM-033.txt')
-rw-r--r--memos/WM-033.txt144
1 files changed, 144 insertions, 0 deletions
diff --git a/memos/WM-033.txt b/memos/WM-033.txt
new file mode 100644
index 0000000..b7d0f7d
--- /dev/null
+++ b/memos/WM-033.txt
@@ -0,0 +1,144 @@
+
+
+
+
+
+
+
+Document: WM-033 P. Webb
+Category: Project 2018.07.09
+
+ Socii Dispatch 05
+
+Abstract
+
+ Ship often!
+
+Body
+
+ I guess this is turning into a bi-monthly update? Don't fret, the
+ silence doesn't mean there wasn't progress being made. Let's jump in.
+
+ 1. Quick life update
+
+ I got a (remote) job! And a house! Kids are happy, wife is happy,
+ so I'm happy.
+
+ 2. JSON Feed support
+
+ Every profile is now equipped with JSON Feed[1] support! Created
+ by Manton Reece and Brent Simmons, JSON Feed aims to be the new
+ RSS. To access your feed (or others), append `/feed` to a user's
+ profile page. Here's an example:
+
+ ```
+ https://hub.socii.network/Socii/feed
+ ```
+
+ Your feed is now available for whatever you wish to use it for.
+ Maybe you want to display your latest posts on your personal site?
+ Have a customized dashboard? Put 'er there!
+
+ Socii is a social network, yes, but not one that wants to keep you
+ on it all the time. Your data is yours.
+
+ 3. GDPR
+
+ By now you've seen the emails and memes as a result of the passing
+ of General Data Protection Regulation (GDPR) in Europe. Long story
+ short, it's a collection of data protections passed into law for
+ European citizens. This means, companies are required to protect
+ data pertaining to any users from Europe and to also deliver or
+ delete said data should the user request it.
+
+ Unlike the major social networks here in America, I didn't opt to
+ have two versions of privacy policies for users in Europe and
+ those outside. EVERYONE deserves to have their data protected,
+ exported, and/or deleted at a whim. To echo the words of Childish
+ Gambino, "this is America".
+
+ Now, GDPR isn't *perfect* but it's a step in the right direction.
+ To that end, I've updated the policies[2] page to be more
+ comprehensive about the data Socii collects, how that data is
+ used, email addresses of the Data Controller and Data Controller
+ officer, and so on. I dislike that it's so long though…I may bring
+ back the TL;DR version from before and have a toggle to see both.
+ Yeah, that's a great idea!
+
+ 4. Notifications
+
+ This was a long time coming. When you favorite or respond to a
+ post, the author will get a beautifully simple email stating such.
+
+ The notifications tab on the hub is still empty for now but I
+ *could not wait* to ship the workable part of this feature.
+
+ `@ mention` support for notifications will come shortly. This will
+ pave the way for private messages as well.
+
+ 5. Performance gains
+
+ Yes! FINALLY. You wanna know why loading of `hub.socii.network`
+ was so slow? I was literally loading…every…single…post before
+ displaying the hub. Over time the wait got progressively worse
+ because there were more posts to load.
+
+ Enough was enough and after I shipped notifications, I got to work
+ on implementing GraphQL-based pagination. I had this implemented
+ *partially* for about a month or so but other issues plagued me
+ more than the slowness of the hub. Pagination is ALSO active on
+ profile pages. It may not be perfect but it's close.
+
+ A blog post to detail how to do pagination in GraphQL without
+ Apollo, Prisma, or whatever magic framework is forthcoming. I've
+ had developers attached to the GraphQL project tell me that
+ pagination is trivial[3], unimportant, or easy, both on GitHub and
+ Slack. Or, that I NEED to use yet ANOTHER framework to achieve it.
+
+ Good thing there are other places to find help. No matter how much
+ I learn, I remember knowing a LOT less. I feel obligated to pass
+ on the knowledge of dope things. Stay tuned!
+
+ 6. Low-hanging fruit and other changes
+
+ - Email addresses can now have `+` and `.` characters, perfect for
+ having multiple accounts and using email aliases.
+ - When posts are deleted, favorite and reply counts are accurate.
+ - When a post with replies is deleted, the replies lose the
+ reply icon
+ - Implementation of reposting is *canceled*, discussion here[4].
+ - Message flasher (for lack of better description) has a
+ reasonable z-index now. No more covering navigation menus.
+ - Post preview button is now disabled when no text has been
+ entered, bug report here[5].
+ - New post modal now matches language with the button that
+ triggers it, bug report here[5].
+ - Visual issues regarding the Markdown help have been fixed.
+ - Increased character count for "optimal display".
+ - New post modal and reply box is now fully responsive.
+ - Got rid of as many "magic numbers" from the CSS as possible.
+ This required some refactoring.
+ - Refactored all my microservices and added tests. TESTS.
+ Currently, they check for out-of-date dependencies and lints
+ the code.
+
+ Things I've Learned
+
+ 1. You will almost always hate your old code.
+ 2. Refactoring is fun. I already knew this but I like reminding
+ myself. It's an opportunity to replace/improve functionality
+ with less code. AMAZING. 🤩
+ 3. Everything can be distilled into simple concepts if you think
+ long enough.
+ 4. Big Social is duplicitous.
+
+ ∴NetOpWibby[6], out! 🕸
+
+References
+
+ [1] <https://jsonfeed.org>
+ [2] <https://socii.network/policies>
+ [3] <https://github.com/howtographql/howtographql/issues/514>
+ [4] <https://hub.socii.network/s/jfy2tm86000h10bk4i1epmp2>
+ [5] <https://hub.socii.network/s/jgtl9k0n000wxobkq9a9u54k>
+ [6] <https://hub.socii.network/NetOpWibby>