Emma (has_many_books of old)

CEO of consonance.app, MD of snowbooks.com and makeourbook.com. Ruby, and Rails. React when I absolutely have to. Also justsimply.dev, dayofcode.co.uk, nope.business etc. Did the _why book.

Cure fan. Home educator. 4 day wkr. Atheist she/her b.330ppm Ecoregion: Caledon Conifer Forests. @has_many_books on twitter (deleted) if you wonder if it's me. Founder-ing is not the hard part. Maker of daft things out of fabric and on Roland Fantom-8. Veg gardener.

Emma (has_many_books of old)emma@ruby.social
2025-05-29
Emma (has_many_books of old)emma@ruby.social
2025-05-29

@skillstopractice I guess?? But each time we try, we think oh yeah, selects are still hard

Emma (has_many_books of old)emma@ruby.social
2025-05-29

Thank heavens it's Thriday*

* our company is a 4 day week company, so Thursday is our last working day of the week.

Emma (has_many_books of old)emma@ruby.social
2025-05-29

@skillstopractice Well, just "the next thing" that'll need replacing!

We use React on a few pages (most of the app is normal Rails / Turbo, after a big effort to strip out everything else) so we use react-select. The main reason we can't strip that out, just like that, is that it has a "createable" hook. And it works fine in React and Rails and test land. react-select.com/home It'll need to go at some point, but it's OK for now. What do you use?

triggering createable in a react select input field
Emma (has_many_books of old)emma@ruby.social
2025-05-28

bye, jQuery and select2! (actually merging this time...!)

-10000 lines of code in a github PR.
Emma (has_many_books of old)emma@ruby.social
2025-05-28

@HansTenner Sadly whilst I also use LibreOffice for the good reasons you mention, I find its UI and UX grating. But I, also, am not in a position to contribute, so I should just shut up.

Emma (has_many_books of old)emma@ruby.social
2025-05-28

@HansTenner are you just saying that for the sticker?

Emma (has_many_books of old)emma@ruby.social
2025-05-28

@neonbubble such a clue, when the ticket includes the clause "all we want to do is just..."

Emma (has_many_books of old)emma@ruby.social
2025-05-27

@baldur Safari has been the new IE9 a few times of late.

Emma (has_many_books of old)emma@ruby.social
2025-05-27
Emma (has_many_books of old)emma@ruby.social
2025-05-26
Emma (has_many_books of old)emma@ruby.social
2025-05-26

@zmanguy yeah, this is my pre-TDD, pre-having thought about the right approach at all, approach. TDD is too heavy at this very early stage, for me anyway, and I like to see the thing working in the browser for my brain to decide if it's the right direction or not.

Emma (has_many_books of old)emma@ruby.social
2025-05-24

I invented* a thing. Instead of trying to get the migration right from the start, on this spike branch I've added methods in the model that respond in the same way a call to the attribute on the table would respond. Then I don't need to create an unholy amount of up-down migrations whilst I'm still noodling.

(Oh, yeah -- AI here stands for Advance Information sheet. Don't worry!)

* of course, this will be how everyone does it and I've just never noticed.

screenshot from an active record model with methods such as default_text returning an open struct, and banner_url returning a system url for now.
Emma (has_many_books of old)emma@ruby.social
2025-05-23
Emma (has_many_books of old)emma@ruby.social
2025-05-23
Emma (has_many_books of old)emma@ruby.social
2025-05-23
Emma (has_many_books of old)emma@ruby.social
2025-05-23
Emma (has_many_books of old)emma@ruby.social
2025-05-23
Emma (has_many_books of old)emma@ruby.social
2025-05-22

@rgarner bad news

Emma (has_many_books of old)emma@ruby.social
2025-05-22

@rgarner 😏😖ðŸĪŠ

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst