67 comments

[ 4.3 ms ] story [ 133 ms ] thread
"JavaScript and its earlier version — Java..." ???
Have some distance and sense of humour man ; )
The article was mostly serious until then. Wasn't expecting a satire piece, caught me off guard.
Happy to hear. :) Hope you enjoyed!
Really?

It seemed pretty clear it was making jokes to me.

From just above the joke about JavaScript and Java:

> Whether they use it in their job or just to make coffee (coffee-maker).

> But it’s not normal rapper like Eminem, it’s more like:

or further above:

> Some describe its usage — like anti-ecological tree-kill, some not

> [Image of ducks/birds idk] JavaScript developers pictured trying to find their way around in node_modules directory :(

I never got a serious feel at all.

Read the title again.:)
That's easy - use non-English names. I, for one, try to give Latin names where possible. I'm currently working on a SPA called "scriptare"[1] (which is Latin for "write"). The front-end part is called "calamus" (pencil) and the node.js back-end is "praeceptor" (teacher), and the ML back-end is "augur" (seer).

As luck would have it, I was just putting out a new version of our in-house MVC framework called "Compago"[2] (structure/framework in Latin). While it has been used in various versions since 2013, we didn't share it until 2015, and even then didn't document beyond the JSDoc comments since we are not interested in popularizing it.

[1]http://scriptare.com (in closed beta)

[2]https://github.com/scriptare/compago

Maybe the problem is real. :) Good luck with JS framework!
Swahili is a great language for finding good-sounding project names. Most words are easily pronounceable with a 'pleasant' balance between vowels and consonants, they just 'sound good'.

Take a word like 'rafiki', Swahili for 'friend'. That's a perfect name for some social platform. Or 'nena' - which means 'speak' - for a chat app. Just get a Swahili-whatever dictionary and you'll soon have more project names than you can shake a fimbo at. Fimbo is Swahili for 'stick', by the way.

Oh I like that idea, and I'm looking to rebrand the software I have been working on and off for 2+ years, I will have to look up some translations online.

Thanks!

Also makes me wonder about some other languages too.

"Scribere" is Latin for "to write". It's third conjugation, not first (-are). "Calamus" is Latin for "reed" but it can also mean "pen": https://en.wikipedia.org/wiki/Kalamos . Pencils weren't invented until the 16th century. The modern Latin word for pencil is "plumbum" (lead): https://glosbe.com/la/en/calamus

Fun fact: the word "pencil" is related to the word "penis". See http://www.etymonline.com/index.php?term=pencil

Calamari (Italian for squid) also derives from the same Latin root, via the ink connection.
Has anybody considered not having a single global repository of JS packages? (Also, as usual, has anybody considered just not doing this whole JS thing?)
Can you elaborate on this? What's the alternative to single global repository? By single global repository you mean NPM?
The alternative is many.

E.g. apt.

Even PHP manages to get this right - Composer uses the Packagist repository as a default but just about any git or svn repo with a URL will do.
npm supports git urls, too (or the even shorter user/project#tag if it is from github)
Composer also supports namespacing
Does apt allow you to have multiple packages with the same name from different repositories? I don't see how it solves this issue otherwise.
No, it does not.

But I don't use the vast majority of apt repos.

I use a handful of well-curated ones with high-quality software, plus a handful for one-off packages.

In contrast, there's basically no limit to how much debris you can upload to npm.

There's a lot of problems with APT. :)
Separate uncoordinated repositories (which risks namespace collisions), or separate repositories with a rule effectively providing a system for assuring universally unique names, e.g., by prefixing project names with the identification of the repository responsible for the local uniqueness of the name.
An example alternative is a ports tree. You have a repository which can build packages from descriptions. This repository itself is a formal parameter, so it can be replaced easily. It's also a basic filesystem structure that doesn't depend on external services directly in order to be queried. At this point in history, we are starting to become much more capable of federating basic read-only filesystems, so the availability of a simple ports tree (and any referent tarballs) are no longer depending as much on central authority servers.

In addition to the BSDs, this is how the Nix ecosystem manages its package repositories. There is (of course [0]) a singularly large repository, nixpkgs, but there are also forks which can vary greatly in appearance, from nixpkgs + custom packages, all the way to systems like Triton, which replace a lot of the fundamental repository structure. Nonetheless, they are largely interchangeable at the top level.

NPM would have to be distributed as a git repository, at the least, for this to be feasible.

[0] Why is there always a single large structure at the center of repositories of data? It's because data likes to aggregate as a side-effect of what some people call "network effects" or "economies of scale" or "Boyle's law", although I'm not sure that any of them cover it succinctly. The best introduction to this that I know of is the two-balloon experiment: https://en.wikipedia.org/wiki/Two-balloon_experiment

Perhaps you mean "has anybody considered having formal, hierarchical namespaces", an orthogonal concern to having or not having a single global repository (although the two can be coupled together by the community if they so choose).

To which the answer is yes [1][2][3][4].

[1] https://github.com/npm/npm/issues/798 [2] https://github.com/npm/npm/issues/5239 [3] http://blog.npmjs.org/post/116936804365/solving-npms-hard-pr... [4] https://docs.npmjs.com/getting-started/scoped-packages

Is there any particular reason not to use emoji? JavaScript is by specification a unicode language. I already have registered users in my system with pictographic name strings, why not software? Might be some introductory issues with logs and terminals and incorrect assumptions by developer tools, surely nothing we can't fix.
(comment deleted)
- Hey, I’m new to programming, which framework is the best for creating single page applications?

- Hello, I believe .js is the best, but at work we use .js for its speed and flexibility. Other popular choices are .js, .js and .js. Hope I’ve helped!

- That’s great! Thanks a lot!

Well, at least it's shorter, so there's that..

edit: Ok, that's the reason...

That's not a reason not to use emoji. That's a reason to drag an ASCII-centric communications medium into the Unicode era. We're in an time where application data is Unicode. You may wish to paste such data into a chat, or refer to people and organisations whose names aren't written in latin script.

When your chosen comms medium doesn't support those things, it should be updated.

Let's imagine that was a transcript of a verbal conversation. How would you pronounce the emoji? Facial expressions?
I've never been afraid to use interpretive dance in my presentations.

What actually happens: see Chinese. One broadly-speaking-unified set of logograms, 200 spoken dialects, of which a handful are widely adopted, and one has governmental primacy.

I've had Chinese lessons and even Chinese people have problems understanding each other for example because of voice and voice emotions are so important. I think Chinese language shouldn't be role model for what IT world should be. :)
Oh, I agree, it's not a role model. I think it stands as an example of possible emergent outcome.
Obviously facial expressions combined with illustrating sound sequences to resolve ambiguities.

- Hello, I believe MEEP.js is the best, but at work we use MOOP.js for its speed and flexibility. Other popular choices are WEEEEE.js, BLEEEH.js and WEEOOHWEEHOOWEEBLUB.js. Hope I’ve helped!

- That’s great! Thanks a lot!

Indeed, there is never a valid reason not to use emoji.

(Though in this case, the communication medium is Hacker News. Shame on you, Hacker News!)

Fun thing; I named Umbrella JS that way when i realized that you can use unicode as javascript variable names AND I just happened to find that as the first one. So the initial library (a jQuery sustitute) was literaly `"UMBRELLA UNICODE"('selector')` (note: HN doesn't allow for the character). Of course sanity came back and when releasing something decent I changed the name back to "u('selector')"

See the character I mean: http://www.fileformat.info/info/unicode/char/2602/index.htm

Wow, that's curious! Did it work in JavaScript though? Or just in name of package? :)
I doesn't seem to work anymore! But it used to work as the library was using that in the beginning.
Have you ever tried typing emoji? Or reading it? Or writing it? Or speaking it?

Go give a tech talk about .js but careful, don't want to confuse it with .js

Namespaces solves this issue, no?
My thought exactly.
The number of node packages there are is deceptive when it comes to measuring the js ecosystem. It's better to count how many packages are well referenced, which might be a number as low as 10k.
But even if the library is not used, once it's on NPM, the name is taken.
Not really, if a library is truly empty in NPM just contact NPM and they are nice enough and will give you the name if you are going to use it.
You can scope modules under your name. e.g. `@makenova/panda`
next week on HN:

"Show HN: ćřàp - a JS framework to name your JS framework using UTF-32 characters"

26^30 = shitloads of possible names

  $ pwgen -A0 30 10
  exeetoothoohohghohmixeinaeyigh aethahpoquielainogeorobeephoul
  cofeaphiwaeleedohphechiefeozei ahsohleiyahzithaacheibiechahth
  udiekomieheecohshohmupahshaese zaewetohheethohbocoocheikaikei
  keemokeebeejahjoomaengiopahshe oochephaekiethaehahshieshahsai
  poufifohjohtohdaiceghaizoenais aizeephahkongairiecogheegoedie
I expect all of these to be taken on NPM tomorrow, now that I posted them. :)
exeetoothoohohghohmixeinaeyigh

I know that. That's a Welsh town.

It is very improbably named then, since a) the top 5 letters found in Welsh placenames are N, L, A, E, and R, and b) there is no 'X' in Welsh.
Drug companies seemed to have run out of names a while ago and have resorted to barely pronouncible strings of mostly consonants. Like Xeljanz and Viibryd.
The reason for that is there are all kinds of rules about what you can name your drug. Can't sound like anything else. Can't suggest any effects it doesn't have. Etc. Made up words are pretty much the only safe bet. From there you want to make up a word that's memorable and short so it stands out and people remember it.
Didn't know about such rules for drug naming. Clarifies a lot. Thanks for sharing.
constonant-vowel-constonant-vowel-constonant-vowel-constonant
The part of me that cares about my HN karma wants me to refrain from saying that I hope people stop making JavaScript frameworks well before we run out of names. JavaScript is a monstrosity that from a usability standpoint really has made the web worse and not better.

I would love a web without js tracking, scroll bar hijacking, browser back/forward hijacking, delayed modal popups, useless animations that bring my Oneplus 3T to its knees, etc.

I also would love a computing ecosystem where nodejs didn't enable every journeyman web designer to try their hands at bringing all that cruft to the desktop.

I find the UX improves significantly with noscript.

Oh, this is very uncommon point of view :) Be prepared to be eaten, you're on JavaScript grounds!
At first, you can just start adding 'ly' to all new packages: reactly, reduxly, expressly, passportly.

When that doesn't work any more, start prefixing names with 'get': getmochaly, getasyncly, getunderscorely.

After that, you need to start requiring at least 2 numerals, 3 capital letters, and 1 punctuation mark: geTBab3!lY9, Ge!ax1OSly2, g3tW%b4acKlY.

What could be more natural than npm install --save-dev getBAB3l-prese!-sta&e-0ly ?

Thanks for pointing out another trends and predicting new one! You're the saviour of JS-mankind!
The real question here is, will the web, in anything resembling it's current form still exist in 20 years? 100 years? 1000 years? And if so, will it rely on ES2037, ES2117, ES3017? Books haven't changed much at all in the last 1000 years, and although it would be naive for us to expect the internet to say the same, there will likely still be a demand for fairly simple blogs and forums well into the future.
What is this garage post.

Quote from article:

" (500k > 200k === true). "

Wat??

Github.com will be the de facto canonical naming. It's already used in several language/packing systems, supported by others. And as the article points out, what other alternatives are there?

There are issues with this as is evident in Go projects using forks, etc which will have to get sorted out and evolve.

See also: Pheonix, I mean Firebird, oops I mean Firefox.