markwylde

twtxt.net

An developer addicted to JavaScript

Recent twts from markwylde
In-reply-to » @adi @prologic It's worth bearing in mind that

I’ve really hated the entire idea of app stores. I have been on Google Pixels since the 4, and use Calyxos, so can’t use PlayStore. Aurora comes preinstalled, but it’s kinda flakey.

F-Droid is ideal, all reproducible builds, opensource. It’s totally doable, but thinks like banking apps and utility apps, aren’t on there, as probably never will be as they all do dodgy stuff they don’t want you knowing about.

The reason I hate app stores, is because we already have a (somewhat decentralised) trusted transport in TLS/HTTPS. Like, I know if I’m on the hsbc.co.uk website, I’m 99.999999% sure I’m actually speaking to hsbc. So, then provide me the APK and let me down it. Or, make a decent PWA/WebApp so I don’t need your app.

Thing is. I don’t trust Google or Apple even a fraction as much as I would trust the TLS of the companies domain.

⤋ Read More
In-reply-to » @prologic See https://www.sogo.nu/, it looks it has an web app.

Interesting, it looks a little better for me, but it’s a bit slow and laggy.

I’ve tried to stay away from hosting email servers myself. It’s really hard. But I’ve thought about a project which uses something like mailgun or SES, but then I create a ui and restful server over the top of it. But, priorities….

screenshot of sogo
Download

screenshot of sogo

⤋ Read More
In-reply-to » Oh farrrrk me! 🤦‍♂️ React Apps, NodeJS c'mon! 🤦‍♂️ How does anyone do this shit?! 🤯

The problem isn’t with NodeJS or NPM, it’s developers that are so willing to use horrible frameworks/libraries/tooling that is just simply not needed. NodeJS gives you so much out of the box, and NPM is simply a place to store your packages. With Deno, you won’t even need a package manager as it takes a step closer to go modules approach.

If you’re going to use React, TypeScript, NextJs, Webpack, Styled Components, Material UI, Jest, and the 10k dependencies that comes with it, then yeah, your dev environment is going to be slow, bloated, and incredibly frustrating to work with. Not to mention have security issues. I’ve literally just done a fresh create-react-app installation (latest version 5.0.1 as I write this), and boom, 6 high severity vulnerabilities.

Download

But it doesn’t have to be this way. Choose lightweight libraries that do one thing really well, and build your project from the ground up yourself.

⤋ Read More
In-reply-to » Oh farrrrk me! 🤦‍♂️ React Apps, NodeJS c'mon! 🤦‍♂️ How does anyone do this shit?! 🤯

The problem isn’t with NodeJS or NPM, it’s the developers that are so willing to use horrible frameworks/libraries/tooling that is just simply not needed. NodeJS gives you so much out of the box, and NPM is simply a place to store your packages. With Deno, you won’t even need a package manager as it takes a step closer to go modules approach.

If you’re going to use React, TypeScript, NextJs, Webpack, Styled Components, Material UI, Jest, and the 10k dependencies that comes with it, then yeah, your dev environment is going to be slow, bloated, and incredibly frustrating to work with. Not to mention have security issues. I’ve literally just done a fresh create-react-app installation (latest version 5.0.1 as I write this), and boom, 6 high severity vulnerabilities.

Download

But it doesn’t have to be this way. Choose lightweight libraries that do one thing really well, and build your project from the ground up yourself.

⤋ Read More
In-reply-to » I love simple, lightweight, small, minimal tools that just do the bare minimum. Based on that, does anyone have any good recommendations for a key value store that is: - lightweight - clustered - sharded (so if I have 5 instances and 100 keys, each node will roughly have 20 keys on it). - easy to join nodes: as in kv-server --join somehost:1111

Did a quick benchmark:
https://git.mills.io/prologic/bitraft/issues/58

Seems the summary benchmark of a 5node cluster on my laptop is:

GET: 1165.64 requests per second
SET: 1061.80 requests per second

⤋ Read More
In-reply-to » I love simple, lightweight, small, minimal tools that just do the bare minimum. Based on that, does anyone have any good recommendations for a key value store that is: - lightweight - clustered - sharded (so if I have 5 instances and 100 keys, each node will roughly have 20 keys on it). - easy to join nodes: as in kv-server --join somehost:1111

But in Bitraft every node contains every key + value, right? I probably wasn’t clear above, but in my idea REPLICA_COUNT would be 3 but the NODE_COUNT may be 10. So a put would go to 3 of 10 of the nodes.

⤋ Read More
In-reply-to » I love simple, lightweight, small, minimal tools that just do the bare minimum. Based on that, does anyone have any good recommendations for a key value store that is: - lightweight - clustered - sharded (so if I have 5 instances and 100 keys, each node will roughly have 20 keys on it). - easy to join nodes: as in kv-server --join somehost:1111

@prologic@twtxt.net I’m happy to do it. Might try now actually. It was just incase you knew. I’ll post in the README if I get it working. I’m hoping redis-benchmark will work since it’s got the same api as redis.

I wonder if sharding could be implemented by:

Presumptions:

  • redis can broadcast to all nodes in the cluster
  • REPLICA_COUNT is 3

PUT workflow:

  • a PUT get’s forwarded to REPLICA_COUNT random nodes in the cluster

GET workflow:

  • a broadcast is made to the cluster saying “I NEED A VALUE FOR KEY ‘TEST’”
  • all nodes that contain that value reply to the server
  • the first response get’s forwarded to the client
  • the other responses are discarded

I’m sure there would be some edges cases, like syncing.

  • What if 1 of the random node’s is full and therefore only REPLICA_COUNT-1 nodes received the document
  • This could me 2 nodes have the new value, but the 3rd has the old value

Maybe it could be solved by only committing once REPLICA_COUNT nodes successfully receive the message.

⤋ Read More
In-reply-to » I love simple, lightweight, small, minimal tools that just do the bare minimum. Based on that, does anyone have any good recommendations for a key value store that is: - lightweight - clustered - sharded (so if I have 5 instances and 100 keys, each node will roughly have 20 keys on it). - easy to join nodes: as in kv-server --join somehost:1111

@prologic@twtxt.net ever done any stress testing on bitraft? In a cluster, do you know that the throughput would be? Like, PUT’s per second and GET’s per second?

⤋ Read More
In-reply-to » I love simple, lightweight, small, minimal tools that just do the bare minimum. Based on that, does anyone have any good recommendations for a key value store that is: - lightweight - clustered - sharded (so if I have 5 instances and 100 keys, each node will roughly have 20 keys on it). - easy to join nodes: as in kv-server --join somehost:1111

Thanks guys. Bitraft is awesome @prologic@twtxt.net but yeah, not sharded :( I did try etcd before @abucci@anthony.buc.ci but I did find it tricker to setup than Bitraft. But again, it’s not sharded :(

⤋ Read More

I love simple, lightweight, small, minimal tools that just do the bare minimum. Based on that, does anyone have any good recommendations for a key value store that is:

  • lightweight
  • clustered
  • sharded (so if I have 5 instances and 100 keys, each node will roughly have 20 keys on it).
  • easy to join nodes: as in kv-server --join somehost:1111

For reference, I think Consul is too heavy (and not sharded I believe).

It would be great to have a small go executable, that I can run on 10 servers, all connected up, that exposes a redis like api. Simple GET, PUT and STREAM would be great.

@prologic@twtxt.net anyone else here I can ping?

⤋ Read More
In-reply-to » For those on my pod (twtxt.net) -- Check out the modified filters that now behave as "additive" (AND) filters, with toggles. 👌 The UI/UX is not great, but this is the best my "skills" can come up with. Media Hopefully folks like @justamoment @markwylde @darch or @hashrock can help improve the UX 🤞

I love it. Just signed in and wondered if anyone had mentioned me. Clicked and saw this thread. ❤️

⤋ Read More
In-reply-to » I'm looking into building a standalone app that can connect to any twtxt pod.

I think maybe an account swither in the nav would be a good balance to start with. If it turns out many people use multiple pods, we could improve the UI to make switching easier.

⤋ Read More
In-reply-to » I'm looking into building a standalone app that can connect to any twtxt pod.

@prologic@twtxt.net Yeah, this is what I’m thinking. How about, since the app would technically be able to connect to any pod, it could store a list of pods you’re a member of. For redundancy, for example.

So you would add an account (minimum of one), then you could also add additional. Then if you can’t connect to the first pod, you can connect to the second?

Still pointless? I mean. It’s easier to just have 1 account that’s stored and connected to every time. But I’m just wondering if anyone here does have multiple accounts.

⤋ Read More

I’m looking into building a standalone app that can connect to any twtxt pod.

I’m considering a slack like approach, where down the left hand side you can have multiple pod instances.

Do people have an account on multiple pods? Or is there not really any point since you can feed into any pod from any other pod?

⤋ Read More

Are there many JavaScript developers on here? I’ve built a super basic testing library, because pretty much every library out there does a bunch of magic like auto running the suite, auto loading files, hooks (beforeEach/beforeAll/etc) and all the nesting (describe/it).

I don’t think it’s needed and have pretty much exclusively been doing “no mocking”, “no hooks”, and it’s worked well for me.

https://github.com/markwylde/just-tap

⤋ Read More
In-reply-to » @retrocrash So... About these other self-host(er) communities you speak of... Where do we find them, who do we talk to? 🤔

Okay to bring this back on topic. The reason I said all the above, is because I see the cloud hosting crap as a similar problem.

I think really we’re stuck with them and their vendor locked, restricted, marketplace centric platforms. But we can minimize the lockin we use.

Make sure you only use VM’s. Don’t use any of their cloud databases, build, pipelines, kubernetes, containers, etc. Just use, simple, basic, abundant virtual machines that can be portable to other cloud companies.

⤋ Read More
In-reply-to » @retrocrash So... About these other self-host(er) communities you speak of... Where do we find them, who do we talk to? 🤔

Yeah I get your dilemma James. I have almost the same one. I hate how Intel and AMD chips have built in backdoors [1] that Intel/AMD can take control of your machine without you knowing/agreeing. But it’s impossible to find a laptop/machine that doesn’t use Intel. There are a few ARM chromebooks, but they’re really not good enough for a daily driver.

Apple managed to escape by using their own ARM mobile chips in the M1/M2 laptops. But the problem is Apple still create’s a walled garden they can take over without your knowledge at any time. So we’re back to square one.

I’ve had to suck it up, stick with this stupid Intel processor, but I’m on a system76 2 which uses coreboot , which at least frees me from the UEFI [3] firmware mess (which is Microsoft’s control over what OS you can boot).

  1. https://libreboot.org/faq.html#intelme
  2. https://system76.com/laptops/oryx
  3. http://techrights.org/2012/07/17/rms-on-uefi/

Oh wow, maximum message length? Annoying.

⤋ Read More

I’m confused. There is a hacker-news feed here, and I can see an interesting post I wanted to comment on:

Twtxt search says it’s there, but I can’t actually see the post. I do follow hacker-news on twtxt, but there’s only like 5 posts from there.

Is this expected or a bug?

Download


Download

⤋ Read More
In-reply-to » It always amazes me just how bad Microsoft's "products" are. I actually thought Windows 95 to XP where really good, lightweight (relatively speaking) and flexible.

I mean, if it is pretty good, why should we care if it is based on Ubuntu? 🤣

Haha, yeah, you’re right.

⤋ Read More
In-reply-to » It always amazes me just how bad Microsoft's "products" are. I actually thought Windows 95 to XP where really good, lightweight (relatively speaking) and flexible.

Yeah I’m using Windows for a bit of gaming. But most stuff on Steam actually works on Linux, via Wine. I think/hope you’re right, we’ll finally have a year of the Linux desktop 😁

⤋ Read More
In-reply-to » It always amazes me just how bad Microsoft's "products" are. I actually thought Windows 95 to XP where really good, lightweight (relatively speaking) and flexible.

Yeah, absoluteky. The closed source reason doesn’t make it trash. Sublime text is in no way trash, but is closed source and proprietary.

It’s the points I listed after, that gets me to the conclusion macOS is trash.

Signing is a great feature. But the gatekeeper shouldn’t be Apple.

8gb is huge. But I guess, like everything, it’s subjective.

⤋ Read More
In-reply-to » It always amazes me just how bad Microsoft's "products" are. I actually thought Windows 95 to XP where really good, lightweight (relatively speaking) and flexible.

@fastidious@arrakis.netbros.com yeah, I’m really fussy over software and a big supporter of the GPL/GNU/FSF stuff. So pretty much any proprietary software, I’m against 😛 I’m very unreasonable, I know 😛

But I really hate:

  • telemetry
  • signing/gatekeeping software
  • can’t actually download it in a nice iso
  • lots of legal conditions, like only allowed on Apple hardware. Can’t just buy the os.
  • closed source
  • its huge. Like GBs in size

Currently I use popOS on a System76 laptop. It’s pretty good, although I wish it wasn’t based on Ubuntu.

⤋ Read More
In-reply-to » Had to deal with lots of Microsoft stuff today at work. Am now questioning my life choices. Maybe I should start living in a buddhist monastery or something. 🤔

It always amazes me just how bad Microsoft’s “products” are. I actually thought Windows 95 to XP where really good, lightweight (relatively speaking) and flexible.

I got a Windows PC for gaming a while back, which is Windows 10 I think. The entire thing is just a cesspit of surveillance and adverts. But, with the added benefit, of having to pay for a closed source proprietary piece of garbage.

Why anyone would choose to use that over Linux or a Mac is beyond me. Don’t get me wrong, macOS is still trash. But miles better than that Windows disaster.

⤋ Read More

Well, in the latest game of “Which of the UK and Australia is worse?”, UK scores some points:
https://www.rollingstone.com/culture/culture-news/revealed-uk-government-publicity-blitz-to-undermine-privacy-encryption-1285453/

We’re struggling to fund our national health service, but yet our tax money can be spent towards this uneducated and ill-informed anti encryption and privacy campaign.

What an embarrassment for the UK.

⤋ Read More
In-reply-to » I dunno about anyone else, but I'm really getting quite sick and tired of seeing these "Cookie Banner" / "Cookie Popup" thingies everywhere 🤦‍♂️ It's becoming quite annoying and obnoxious 😡 Was this the intention of the GDPR or have we misunderstood the point entirely?! 🤔

Nicely said @movq@www.uninformativ.de All this is doing is showing how trash the web is.

Although, I think the problem also stems from web browsers not doing enough to sandbox domains. A huge benefit of web and the web browser, is that you can go to untrusted websites, and not have it compromise/track/monitor/leak info to other sites/app on your device.

Third party cookies should never have been a thing.

⤋ Read More
In-reply-to » I suspected this, but the difference between suspecting and knowing is... horrifying: https://www.reddit.com/r/antiwork/comments/rj6h1m/amazontornadotextexchangeyourlifeis_just/hp229sy/

Honestly, what a mess :( Very disappointing the way the world seems to be heading.

⤋ Read More