Renaming LuckyRecord to something more generic
paulcsmith opened this issue ยท 17 comments
EDIT: The new name will be Avram
#238 (comment)
LuckyFlow will likely be renamed soon so that it is clearer that it can be used outside Lucky.
I think that might also apply to LuckyRecord. There is nothing in LuckyRecord that is tied specifically to Lucky so it makes sense to give it a more generic name so it's clear people can use it in their own frameworks and apps outside of Lucky.
What are your thoughts on this?
Possible names
- Titan
- Plucky
- Quartz
- Obsidian
- Atomic
- Bokeh
- Turbine
- Filament
- Anvil
- Apex
- Aurora
- Quantum
- Catalyst
- Clover
- Magma
- Kodal
- Meridian
Would love to hear your thoughts!
As mentioned in the Gitter channel; +1 for abstract names ๐ Would be cool if the name could somehow tie into the use case for the library (not that I have any good suggestions).
FWIW from your list I like Atomic and Turbine ๐
Iโm very pro taking a leaf from the Elm community book and naming it after what it does. Or coming as close as possible. HelpfulORM or HelpfulRecord or something maybe?
A lot of these names will struggle with search-ability. I like Bokeh, for example, but what are people going to type into a search engine? I enjoy the culture of abstract names but it often hinders usability and search-ability.
I like the idea of using a pair of words, like @neurodynamic suggested. I did have a bad experience removing an ORM suffix once though...
Those are some good points. I think there are some good counterpoints too. Usually a person would pair the library name with something else that helps narrow things down, for example: "Bokeh virtual form" or "Bokeh distinct query". The same worry could be said for Rails, node, etc., but Google and most search engines learn about these word pairing and tend to get things right once it has had a few months to learn search behavior and categorize things as "programming"
The downside of more concrete names is that you run out of names quickly. There are a number of ORMs right now and I don't think there are enough adjectives to use for everyone's libraries HelpfulRecord
, FastRecord
, etc.
I think abstract names are nice because:
- They're fun :D But this is purely subjective. I know lots of people think it is annoying
- It allows for multiple Crystal ORMs
So maybe a mix of abstract and concrete names to get the best of both worlds? "#{Abstract name} ORM". Example: "Bokeh ORM", "Plucky ORM", etc.
Thoughts?
I'm quite liking "Clover". It's distinct on it's own but still carries the "Lucky" DNA it was born from.
"Clover ORM" / "CloverRecord" / something along those lines.
That's true. I think the Elm community reasoning on this has been "Let's have multiples with the same name, and differentiate by the author instead, so the purpose is always clear", but certainly that's different from how most people are thinking about how packages will be named and there are pros and cons to that approach.
If not naming by purpose, I'm a fan of misspelled or nonsense words as well, specifically for searchability. Definitely would be in favor of avoiding naming it something that has a relationship to the concept of crystals. Worst library to search for I've ever experienced was the "Shoes" library in Ruby. Searching "shoes" was useless, and "ruby shoes" not much better.
@paulcsmith don't get me wrong, I think abstract names are fun too!
I'd favor a suffix of 'Record over 'ORM. There was no end to people asking why ORM was on Granite, and eventually the project was renamed.
I actually appreciate what Rails did here with ActiveSupport, ActiveRecord, etc. Apple has a similar theme with suffixes: HomeKit, GPSKit, UIKit, etc. It creates a nice familiar namespace without tying it to the product it was developed for directly.
Amber has gone a ways down the "use gem names as a theme" path and I like the theme but it feels forced.
I'm not against a rename, but I would caution and say that it creates a lot of chaos. When the dust settles and everyone starts to move on, the github redirect from old->new dies causing a bunch of chaos a second time around :{. I only mention that because you don't want to rename twice! ๐
How about you name it after Dhalsim's elephant, Kodal (https://en.wikipedia.org/wiki/Dhalsim). Yeah, I had to google that a bit.
@robacarp You're right. Record is quite nice so maybe that is a good idea. I also love the Kit
and Active
that those names have.
We actually renamed a bunch of repos/shards a few months ago and it went fairly smoothly. I never liked LuckyRecord and a number of people have avoided it when using non-Lucky projects. So I'd rather do it now than later before things get big enough that it totally sucks!
I'd be curious to hear what your ideas are around making the transition easier. Was there anything in particular you'd avoid? Anything you wish you had done when renaming stuff for Amber? Also, I didn't know GitHub stops redirecting at some point :S Yikes!
@neurodynamic Yeah I want to make it searchable too! I'm so glad you brought that up.
@jayroh CloverRecord sounds pretty cool :)
Kodal seems pretty searchable, and sounds kinda cool too. I'll add it to the list
I'd say stay away from clover since it could get confused with the POS system, and they have a github repo. Also, ActiveRecord's name was taken after the pattern named by Martin Fowler before rails was a thing. But we already have a activerecord.cr package.
I like @russ's idea. The elephant related to postgres, and it's a little more obscure for better searching!
Oh yeah I didn't think of the POS system. Also you might get lots of weird results when you do "Lucky Clover"
I would like some context as to why you chose Lucky, Paul. Maybe try to follow some of the same logic to the Orm? I quite like Atomic, Magma and Obsidian (although maybe Obsidian could be confused with the Amber Orm?)
Just one suggestion: "Avram" in honor of Henriette Avram a computer scientist & library scientist, who developed the MARC format which was hugely influential in electronic library systems & the organization of large amounts of data (such as those at the US Library of Congress). I don't know if she's super well known, and this would be a cool way to honor her.
@HarrisonB I love it. I think this fits in well with the goals of Lucky in general. To help do and promote good in the world. It seems like this might be a small but hopefully meaningful way to do that!
@HarrisonB I never heard of her but reading her bio she seems like an awesome person. Thanks for bringing her to my attention ๐
Closed by luckyframework/avram#1 :D Still a bit more work to do but this is a good start!