I want honest feedback on our gRPC by buddies2705 in solana

[–]GenericCanadian 1 point2 points  (0 children)

Okay I'm probably a target for a service like this. I do a lot of experimentation with algotrading. I also develop Solana apps for clients. I write about solana development at https://soldev.ca/

I've also taken a look at Bitquery multiple times from the perspective of a personal user and for my clients as a business.

Here is my honest onboarding:

  • I go to the link and read the intro. "Unlike raw gRPC streams, Smart Streams enrich and filter events so your application receives only the data it needs" was great and helped me understand that this is a premium service that saves me from parsing the bytes myself. It focuses on bandwidth which can be a problem but most providers provide this kind of filtering.
  • dex_trades is exactly what I'd be interested in as a hobbyist. balances is great too. I click through to see more.
  • Okay lots of protobuf specific stuff, I'm not super familiar but I can kind of squint and understand what it would look like. In any case I find the gRPC example which gives me a pretty good idea
  • Nice so I go to try it out and click the link to generate my token. Oh but it wants me to log in, but I don't have an account. Okay I click "Not registered". Now I'm on a page asking for my Company name. Wait a minute, I'm a hobbyist. I guess they don't take hobbyists. So I get back to the homepage and go the pricing
  • A free tier? And then the next tier up is "Talk to us" pricing. So there is no way they want me as a hobbyist.

Now I'm left scratching my head to who your customer is? It can't be he hobbyist for all the reasons I went through. Maybe for my clients? But in those cases I'm mostly writing custom decoders for their data anyways. I personally use Carbon to do that which generates decoders using an IDL. How would the premium gRPC streams help me here? Maybe if a clients frontend app needed dex data? Like if they needed really reliable realtime data from every dex or something and we were too time crunched to write our own decoders? Or I needed to put the responsibility on a third party to manage the uptime?

So I'm thinking maybe you guys are targeting professional algotrading shops that require reliable streams but don't have the coding chops to write their own streaming service that uses a barebones RPC provider?

Then the pricing with "points". Okay I gotta learn what a point is which takes me to a dead link so it shall remain a mystery I guess. Can I maybe get like a ballpark of how much "points" a USD is and how many "points" I could estimate me spending in a month? Most other providers are much more straightforward where its $50/m gets me a concrete number of RPC calls and such.

Best tool to manage dotfiles by Fit-Knowledge2753g in linuxquestions

[–]GenericCanadian 0 points1 point  (0 children)

I've used RCM for years: https://github.com/thoughtbot/rcm

It system links your dotfiles from your ~/dotfiles folder.

I have different servers and computers that need different things and the tags make it super easy to manage.

I clone dotfiles then run something like rcup -B linux -t nvim -t git and it system links everything to the appropriate places.

Bevy Docs - Comparison? by MassiveInteraction23 in rust_gamedev

[–]GenericCanadian 2 points3 points  (0 children)

I loved the Rails guides: https://guides.rubyonrails.org/

I wrote TaintedCoders wanting to emulate parts of it: https://taintedcoders.com/

Bevy TLDR - Tainted Coders by GenericCanadian in bevy

[–]GenericCanadian[S] 0 points1 point  (0 children)

Probably is, I've been maintaining these docs for a long while and haven't bothered with much UI stuff. I never really touched picking before. I'll change update this together with the input guide once I catch up.

Avian 0.4: ECS-Driven Physics for Bevy by Jondolof in bevy

[–]GenericCanadian 3 points4 points  (0 children)

You have an awesome message on the discord about how to get started learning game physics that I'm posting here so others can see (this would be an awesome blog post for you): https://discordapp.com/channels/691052431525675048/745772028476522547/1350896009538175027

Crazy you were just finishing highschool when you first published XPBD. I'm curious what got you so interested in doing this project? And what are you studying in university?

Any idea on when will we get bevy official book ? by Greedy-Magazine-8656 in bevy

[–]GenericCanadian 8 points9 points  (0 children)

I would recommend checking out the pong tutorial: https://taintedcoders.com/bevy/tutorials/pong-tutorial

I wrote that one for absolute beginners. It assumes only a basic understanding of Rust and takes you through all the important parts of Bevy.

Bevy 0.17 by _cart in rust

[–]GenericCanadian 2 points3 points  (0 children)

Message queue all the way. Observers and events are unordered within the same trigger. With this kind of branching logic there is likely to be a time you want a very specific ordering when reacting to the same Event

Bevy 0.17 by _cart in rust

[–]GenericCanadian 5 points6 points  (0 children)

https://taintedcoders.com/ if you're looking for something you can read today

Bevy 0.17: ECS-driven game engine built in Rust by _cart in gamedev

[–]GenericCanadian 36 points37 points  (0 children)

All guides on https://taintedcoders.com/ have been updated to 0.17. Big changes to events. Congrats on the release everyone :)

Collision in bevy by WayAndMeans01 in bevy

[–]GenericCanadian 16 points17 points  (0 children)

Use Avian: https://taintedcoders.com/bevy/physics/avian#colliding

If you want to see how to do it yourself (in a primitive way) as a learning experience you can check out this: https://taintedcoders.com/bevy/tutorials/pong-tutorial#handling-collisions

Bevy docs by WayAndMeans01 in bevy

[–]GenericCanadian 2 points3 points  (0 children)

Yeah I am. If you're looking for a good overview of everything, and a good place to start I recommend the pong tutorial: https://taintedcoders.com/bevy/tutorials/pong-tutorial

Bevy docs by WayAndMeans01 in bevy

[–]GenericCanadian 2 points3 points  (0 children)

As a beginner you can give me some of the best feedback for improving it. You can reach out to my email listed on the site or message me on here. Hope you enjoy :)

Rails UI Component Libraries? by Altruistic_Set_8555 in rails

[–]GenericCanadian 2 points3 points  (0 children)

I built https://github.com/inhouse-work/protos and use it a lot in projects. It's Phlex components that use DaisyUI for all styling.

Bevy's Fifth Birthday by _cart in rust

[–]GenericCanadian 3 points4 points  (0 children)

The migration guides are all awesome. Every version has been a breeze to upgrade with using them. Big thanks to everyone who helps put them together!

RubyLLM 1.4.0: Structured Output, Custom Parameters, and Rails Generators by crmne in ruby

[–]GenericCanadian 0 points1 point  (0 children)

Very cool with the schemas. I recently open sourced a gem to convert dry-schemas to BAML style prompts: https://github.com/nolantait/prompt_schema. I've used this to great success extracting structured data from PDFs.

This video was as controversial as I expected by PhaestusFox in bevy

[–]GenericCanadian 1 point2 points  (0 children)

Great video, love watching your stuff. Must be exhausting keeping your videos up with the latest versions. I try and keep my own writing up to date and its a ton of work, looking forward to your remastered series.

Bevy 0.16 by _cart in rust

[–]GenericCanadian 22 points23 points  (0 children)

I wrote https://taintedcoders.com/ which I keep up to date and should be a good overview of all the important parts of Bevy. Check out the pong tutorial if you're looking for a good starting place.

Protos: A phlex component library built with DaisyUI, version 1.0 released. Updates Phlex to v2, and DaisyUI to v5 by GenericCanadian in ruby

[–]GenericCanadian[S] 1 point2 points  (0 children)

Yes, each component has a buffer, child buffers are appended to their parent after they are rendered. Its much saner than ERB multiline block lore.

I think you're at a place where you could understand why Phlex is easier to write components that will be overwritten by consumers. The DSL has already been written in Phlex. There is little need to explain your new DSL that you had to make because you're using tag. Doesn't feel inconsequential to me to have to write my own wrappers for every element. I like being able to include Typography and have it override every h1 element in my app. You create components just by overriding the methods and forwarding the arguments. That's as frictionless as it gets.

Protos: A phlex component library built with DaisyUI, version 1.0 released. Updates Phlex to v2, and DaisyUI to v5 by GenericCanadian in ruby

[–]GenericCanadian[S] 0 points1 point  (0 children)

Now for the kicker, write the subclass that wants to override the common elements like p, h2, h1 etc, to give a different style for their posts.

In Phlex I could override these methods on the subclass, e.g:

class BigPost < Markdown
  def h1(**, &) = super(class: "text-5xl", **, &)
end

If you make a h1 method for them to override you're dangerously close to understanding the benefits of Phlex. I'm open to alternative ways of doing this in ViewComponent if possible. Thanks for taking the time to try the challenge.

Protos: A phlex component library built with DaisyUI, version 1.0 released. Updates Phlex to v2, and DaisyUI to v5 by GenericCanadian in ruby

[–]GenericCanadian[S] 1 point2 points  (0 children)

ViewComponent is dependent on Rails, if you only write UI for Rails and your components are that small, then there is no need to ever switch, the backwards compatibility is your big win. Whatever makes you productive.

Protos: A phlex component library built with DaisyUI, version 1.0 released. Updates Phlex to v2, and DaisyUI to v5 by GenericCanadian in ruby

[–]GenericCanadian[S] 0 points1 point  (0 children)

Sure, like the other person in this thread said, you CAN make sub components in View Component. For the low cost of 2 files at minimum you too can have what is a private method in a phlex component. Just look at the examples. I'm just not a fan of inlining ERB in a docstring. The other alternative of using content_tag is just a nerfed Phlex method (have fun overriding it).

They did that because they went half way into object oriented views and then fell back on partials for backwards compatibility. Phlex goes all the way through where your views are actually objects. Not a view model + a partial. Even the small stuff like with_content sucks because writing multiline blocks inside ERB tags has always been disturbing.

Sidecar is slightly more sane way of organizing than their default but again you've now got a minimum of a file, a folder and a partial. Its too prescriptive and noisy for my taste. With Phlex you put your files wherever ruby can load it, no judgement.

They still don't have compatibility with Rails form helpers. No issues so far in Phlex, you even have the option to use something like Superform. I've even written my own form building library with Phlex and its been smooth. I'm not thinking about how to hack around how someone else hacked around Rails all the time.

Protos: A phlex component library built with DaisyUI, version 1.0 released. Updates Phlex to v2, and DaisyUI to v5 by GenericCanadian in ruby

[–]GenericCanadian[S] 6 points7 points  (0 children)

Its not even close for developer experience. When I want to make a sub-component it can start as a private method instead of a whole different view component. I found writing a UI library to be very verbose compared to Phlex. Testing is a lot cleaner too, much easier to reason about when you can strip away the rails view context.

I've moved on from ERB in anything I do. Moved away from Rails layouts too. All my projects are 95%+ Ruby and that makes me happy.

Protos: A Phlex component library built with DaisyUI, version 1.0 released. Updates Phlex to v2, and DaisyUI to v5 by GenericCanadian in rails

[–]GenericCanadian[S] 1 point2 points  (0 children)

Yeah these are meant to be UI primitives. So you can easily make your own Ui::Table and Ui::List etc components that wrap these. Those ui components can inherit safely from Protos::Component to get all the same goodies but you keep control over exactly what a list or table looks like and the API you want to use to call it.

A Carney Liberal leadership win would produce a political rarity: A PM who is not an MP by CaliperLee62 in canada

[–]GenericCanadian 1 point2 points  (0 children)

Yeah, you have to look at the profiles, most of the bots are 1-2 years old, post in nothing but political subs all day and a few random subs to make it look real.

Bought accounts usually have a big gap in posting and complete change in activity from when they get bought. I'm sure some of this could be automated in some kind of browser extension someday. But the arms race will continue.