Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A project needs a name #12

Closed
forki opened this issue Jan 3, 2018 · 20 comments · Fixed by #21
Closed

A project needs a name #12

forki opened this issue Jan 3, 2018 · 20 comments · Fixed by #21

Comments

@forki
Copy link
Member

forki commented Jan 3, 2018

While things like "FSharp.Project.FileOrderer" are technically correct I personally prefer things that are puns or slightly related terms im foreign languages or just completely unrelated words.

So let's do some bikeshedding here.

@donopj2
Copy link
Contributor

donopj2 commented Jan 3, 2018

How about FShuffle? The F can stand in for FSharp or Files with Shuffle implying a rearrangement.

@forki
Copy link
Member Author

forki commented Jan 3, 2018

Isn't shuffle more like using random order? If so then it would be opposite of what we are trying to do

@tforkmann
Copy link
Contributor

What about FsSpruce?

@donopj2
Copy link
Contributor

donopj2 commented Jan 3, 2018

Fair point on Shuffle. Sticking with the theme, what about Mechanic which is a term for a card dealer that deliberately orders the deck. It also implies that the project is being "fixed"

@forki
Copy link
Member Author

forki commented Jan 3, 2018

I like that one.

@forki
Copy link
Member Author

forki commented Jan 3, 2018

Another restriction on the name that I forgot to write above. Since it's a cmd line tool the name should be short and easy to type. mechanic seems legit. I think it should not be longer than that

@donopj2
Copy link
Contributor

donopj2 commented Jan 3, 2018

We could also shorten the CLI name to mech similar to how Chocolatey uses choco if people feel the full name is too long.

@fbehrens
Copy link
Contributor

fbehrens commented Jan 3, 2018

Because i don't know this meaning of card mechanic I have looked up the term on google, and what i found was this, which implies the negative connotation of cheating.

When people talk about a card mechanic, they are talking about a form of cheating.

@forki
Copy link
Member Author

forki commented Jan 3, 2018

I think this tool can actually be seen as a kind of cheating ;-)

@fbehrens
Copy link
Contributor

fbehrens commented Jan 3, 2018

Are there any object to use the name mechanic for the project? To me it looks like it is the name.
Should we then use a different namespace than FSharp.Project.FileOrderer?

@tomasaschan
Copy link

While a [p|f]unny name is, well, [p|f]unny, I think there's merit in considering discoverability of the tool, too. If we choose a name such as mechanic (which is very good in the aspects mentioned above, IMO), we need to make sure there are other ways except the project name that people can find the tool.

This doesn't have to be difficult - a single sentence that summarizes what the project does is enough, as long as we use it in package descriptions, GitHub repo summary etc.

Also, even if we call the executable mechanic or mech, with lowercase, we should use a PascalCased namespace (e.g. Mechanic). Otherwise we'll wreak havoc with all kinds of IDE defaults and linting tools...

@nosami
Copy link
Member

nosami commented Jan 3, 2018

A card mechanic moves cards into an order to benefit themselves, so 👍 from me

@forki
Copy link
Member Author

forki commented Jan 3, 2018

Ok, I think it's a good choice. Let's do it:

  • ProjectName: Mechanic
  • ShortName for tooling: mech
  • Namespace: Mechanic.xyz

@tomasaschan
Copy link

tomasaschan commented Jan 3, 2018

The code I created for the build system is literally just a Hello World app with different project/namespace names, so feel free to ditch that completely and start over. As long as

  • all tests projects, and no other projects, are named *.Tests.fsproj
  • there's a solution file which includes all projects, both source and tests, in the root of src
  • all projects are in subfolders of src

everything should keep working without change.

@jpierson
Copy link

jpierson commented Jan 4, 2018

Sorry late to the game, was thinking about it a bit and came up with the idea of hilo or forklift since the tool is used for lifting files up or pulling them down the project build order. These also have the advantage of being somewhat short and easy to remember.

@forki
Copy link
Member Author

forki commented Jan 4, 2018

forklift would have been a good idea as well. But I don't want my name involved too much ;-)

@forki
Copy link
Member Author

forki commented Jan 4, 2018

Would appreciate a PR to the readme that explains the name.

@jpierson
Copy link

jpierson commented Jan 4, 2018

Yeah forklift may have the best marketing potential but I thought of another alternative. How about philo for "project hilo" since the tool is like a hilo for your project file. I'm guessing it could be pronounced filo which would keep the F# f phoneme intact or p-hilo which indicates the origin of the name.

@tomasaschan
Copy link

Maybe it's just me who's ignorant (English is not my first language) but does everybody know what a hilo is? I had to google it (and apparently there's a place on Hawaii called Hilo, so I searched for "hilo tool") but I couldn't recognize what I was looking at on the top image hits...

However, noticing that the spelling of the tool in at least one place seems to be HiLo, i.e. High-Low, that does sound fitting :)

(And as you may have noticed from the changeset in #21, all I did was a find-replace on FSharp.Project.FileOrderer across all source and project files, and that was enough, so if we want to change again it's not very difficult. However, we should make a final decision before too many people have cloned/forked the repo, otherwise a lot of people will end up with broken remote configs in their git repos...)

@donopj2
Copy link
Contributor

donopj2 commented Jan 4, 2018

To defend the existing name a bit :) - Hilo is short for helicopter, and has the same implication as ForkLift which is lifting. I don't know that really conveys what the tool is doing. Its much more about reordering. It also doesn't really make the project more discoverable. To your recent issue on a logo @tlycken, I was thinking of a dealer's hand with a deck of .fs files. I would imagine it would make the connection for a lot of people. I have a friend who's a graphic designer I was going to speak to. That said if the group is keen to change I am happy with either.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants