Hacker Newsnew | past | comments | ask | show | jobs | submit | Umofomia's commentslogin

I totally agree with this, and will add that another benefit of whimsical names is discoverability. If your project is named plugin-update-checker and I want to find documentation on it, it's likely going to be buried in a bunch of other irrelevant search results about plugin update checkers in general. If it was called SocketToMe instead, I'm going to find much better search results.


Go.




I will share a concrete example where I've recently run into this problem.

In order to make use of OpenStruct, `require 'ostruct'` first needs to be declared. Our code neglected to make that declaration, and we saw failures when it was deployed. This code, however, passed all of our tests. We discovered it was because our testing framework included rspec-expectations, which has a dependency on diff-lcs[1], and diff-lcs itself declares `require 'ostruct'`[2]. Because of this, ostruct was loaded globally before our code was tested, which silently masked the underlying issue.

This being said, I do understand the sentiment that this feature seems superfluous and may introduce unnecessary complication, especially from a Rubyist's point of view. The underlying mental model of Ruby dependency management is different from many other languages, and it's something to keep in mind when coming from other languages that do have scope for declared dependencies.

[1] https://github.com/rspec/rspec-expectations/blob/v3.13.3/rsp... [2] https://github.com/halostatue/diff-lcs/blob/v1.5.1/lib/diff/...


Very helpful example.


`diff-lcs` no longer uses `ostruct` as of 1.6.0 (granted, that was released in February).


Does that mean you develop code without running it locally?

The first execution of new code is in CI?


They didn't say where it was deployed. I'd often only test some changes in staging rather than locally, because they rely on some specific other service I don't want to spend time setting up. It's very common.


Locally you’d have all the dependencies installed. In production you’d leave out development and test dependencies.


Typically with rails applications, test dependencies are not used for local development (i.e. running the rails server on your local machine), they are separate groups in the Gemfile.


Spring and bootsnap muddy the waters. You do not have hermetic dev and test environments in Rails.


> I bet one of those color comparison graphs of the average website in 1998 through today would show the same trend.

    <marquee><blink>Indeed</blink></marquee>


To be more accurate, 们 isn't a plural marker more because of the fact that it's not productive[1], rather than the fact that Chinese doesn't have declension. If 们 were able to be suffixed to any noun to make it plural, then you could consider it to be a plural marker, even though the noun isn't technically declined. That's not the case anyway though, since 们 can only be used with a closed set of pronouns or in a limited way to refer to groups represented by the noun its attached to (in this sense it's more of a metonymic[2] marker rather than a plural marker). For example, 白宮们 can be used to translate "the White House" when it refers to the President and his administration, and cannot be used to mean "white houses".

[1] https://en.wikipedia.org/wiki/Productivity_(linguistics) [2] https://en.wikipedia.org/wiki/Metonymy


It is productive. It can't pluralize anything, but it can pluralize anything that refers to people and it is actively used in novel ways. I've seen someone refer to 美国的妈妈们; metonymy is not involved there. It just means "American mothers", as distinct from a hypothetical 美国的妈妈 "America's mother".

However, the other angle on this is that Mandarin pronouns have singular and plural forms (plurals using 们), and the use of the correct form is obligatory, which suffices to show that plurality exists in the language. Although it isn't the case that 们 is unproductive, even if it was unproductive that still wouldn't show that the language has no plurals.

> in this sense it's more of a metonymic marker rather than a plural marker). For example, 白宮们 can be used to translate "the White House" when it refers to the President and his administration, and cannot be used to mean "white houses"

I should note that this argument doesn't entirely hang together. You can make "the White House" explicitly plural in English by giving it a plural verb:

https://us.iasservices.org.uk/bidens-immigration-bill-propos...

> The White House have announced a comprehensive immigration reform proposal in a bill that has been sent to congress.

How would you say that differs from 白宫们? Does it refer to multiple houses?


When the comment you replied to mentioned "Chinese has gotten by for thousands of years without any plurals at all", I understood it to mean that Chinese has not featured any general system of marking plural by grammatical means[1], which is what is usually understood by the term "plural"[2], not that Chinese has no ability to express a more-than-one count distinction at all (which isn't the case in any language as far as I'm aware).

> It can't pluralize anything, but it can pluralize anything that refers to people and it is actively used in novel ways. I've seen someone refer to 美国的妈妈们; metonymy is not involved there.

It is productive in a limited sense in that way, but not as a general plural marker as you're arguing, and it's limited because 美国的妈妈们 means "American mothers" in that it necessarily refers to them as a collective group (which I argue is an instance of metonymy) rather than a set of more than one "American mother". For instance you cannot say *三个美国的妈妈们 to mean "three American mothers"; you must instead say 三个美国的妈妈 because 美国的妈妈们 can only ever refer to the entire collective group.

> I should note that this argument doesn't entirely hang together. You can make "the White House" explicitly plural in English by giving it a plural verb

This is a feature of UK English where collective nouns agree with plural forms of verbs. US English on the other hand, requires the singular form[3][4]. This has no bearing on how we analyze Chinese.

[1] https://en.wikipedia.org/wiki/Grammatical_number

[2] https://en.wikipedia.org/wiki/Plural

[3] https://victoryediting.com/collective-nouns/

[4] https://en.wikipedia.org/wiki/Collective_noun#Examples_of_me...


Yeah, that was what I meant by including "counting words" which I now remember are better known as measure words or classifiers.


It's probably more a reference to The Cannonball Run film[1], which the designer of Out Run mentioned[2] inspired the original game.

[1] https://en.wikipedia.org/wiki/The_Cannonball_Run

[2] https://en.wikipedia.org/wiki/Out_Run#Development


I noticed the word 'jugaad' from his speech and looked it up: https://en.wikipedia.org/wiki/Jugaad

It seems like a very befitting word for the eponymous "hacker" ethos of this site.


But the same word has also been over used to provide cover or respectability for all types of anti-patterns from poor planning, to lack of any safety net or margins, to cutting corners, disregard for standards and regulations, and hustle culture where the ends justify means however questionable.

So a pinch of salt needed when we hear this word.


see also "bricolage"



Green (綠) in Chinese also came later. In Old Chinese, 青 was generally used to represent both blue and green colors.

While the word 綠 to mean green has been attested as far back as 1000 BC, the idea that it was a separate color rather than describing a shade of 青 is relatively more recent. Wikipedia[0] indicates that it was adopted in the early 20th century in Chinese (as part of vernacular language reforms) and after WWII in Japanese, though these claims are currently marked with [citation needed]. While both are relatively recent, the usage in Chinese did have a longer period of time to take hold.

[0] https://en.wikipedia.org/wiki/Blue%E2%80%93green_distinction...


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: