Live data from Hacker News

Mean Stack

mean.io

81–90 of 97 posts

Re: Mean Stack

#81
post #59

Earlier quoted context omitted.

MongoDB is used in almost every community. Especially for new languages. You can easily find relatively mature MongoDB drivers from the start for new languages, but don't hold your breath for PostgreSQL. See Rust.

I'm not sure that Rust is really a good example. While promising, the language itself and its standard library are still immature and subject to a huge amount of disruptive change on an ongoing basis. I've had some experimental code I wrote in Rust become essentially unusable after only a few months due to significant language and standard library changes. I sure hope that somebody wouldn't spend time on a PostgreSQL…

Rust is a perfect example: http://blog.mongodb.org/post/56426792420/introducing-the-mon...

So are many other newer languages and frameworks. See vibe.d (http://vibed.org/) for D which has only database drivers for MongoDB and Redis.

Re: Mean Stack

#82

Earlier quoted context omitted.

I've seen your flawed argument used more and more often around here lately. It's pretty disappointing to see. Somebody speaking out against deeply broken technologies or bad ideas that have received a lot of hype lately does not mean that such a person "hates progress" or is "resistant to change" or any utter nonsense like that. Likewise, adopting so-called "new ideas" or "new technologies" does not necessarily mean…

I always seem to see you in any thread involving "new" technologies that you find "inferior", most of which are not very new and, like all technologies, are tough to put on a precise inferiority/superiority scale in an objective context-insensitive way. I'm beginning to move past annoyance to pure curiosity - why do you care so much what technologies other people find useful? In what way does people's enjoyment of Ru…

Software doesn't exist in a vacuum. It often has a lifespan far in excess of the involvement of the original developers. It can also have a very serious impact upon its users, its subsequent maintainers, and any organizations they may belong to.

I could not care any less if hobbyist developers want to use Ruby on Rails, JavaScript and NoSQL for own their personal projects that nobody else ever uses or has to maintain.

It's a different situation when such objectively-flawed technologies are used beyond that, however.

The broken software you or others write today using such horrid technologies may very well end up being inherited and maintained by me or one of my teams later on. We won't be happy when we have to waste time, effort, money and opportunity dealing with it and its flaws.

There are numerous, far better options out there. There are just no excuses for using poor technologies these days.

Re: Mean Stack

#83

Earlier quoted context omitted.

The "developers" dig seems unnecessary. @cuttooth and @PommeDeTerre, since you both are pushing the "JS is a flawed language" angle, what do you find are its greatest flaws?

The numerous flaws with JavaScript (the programming language) are well-known and well-documented. A few search engine searches should bring up ample information. As for its "greatest flaw", I think that may be the JavaScript community, and the general attitudes within it. There is, unfortunately, a very high degree of ignorance within the JavaScript community. There are far too many JavaScript programmers who only kn…

You haven't outlined any points here about the language. I don't want Google to tell me what other people think its flaws are, I was asking you what in your experience are its flaws. Looking at your past comments on HN, you seem to leave comments like this a lot.

I guess I'm looking for lists like this:

C/C++

1. The preprocessor allows for horrid misuses with a broken "macro" system that doesn't deserve the name compared to Lisp's.

2. The preprocessor #include system makes compilation slower and more complicated. So much so, in fact, that Google invented a language, in part, to get around it.

3. Dynamically linked libraries are a joke that have no real use in production software.

4. The language syntax is complex enough that creating good parsers for it is extremely hard leading to bad error messages in most compilers.

Y'know, stuff like that.

Re: Mean Stack

#84
post #77

Earlier quoted context omitted.

The numerous flaws with JavaScript (the programming language) are well-known and well-documented. A few search engine searches should bring up ample information. As for its "greatest flaw", I think that may be the JavaScript community, and the general attitudes within it. There is, unfortunately, a very high degree of ignorance within the JavaScript community. There are far too many JavaScript programmers who only kn…

I know you feel like you just explained its flaws, but there's nothing here that couldn't also be said about any other mainstream language.

Nonsense. There's a huge, and very obvious, difference in the overall level of experience, ignorance and competence within the various programming language communities.

The JavaScript, PHP and Ruby communities have an abundance of ignorance, often due to a severe lack of experience. These are the most-hyped languages, and the ones that new developers often flock to. It's quite obvious why so many bad decisions (like using these languages in the first place, or using NoSQL databases) and so much bad code comes out of these communities; their members often just don't know any better, and often aren't willing to learn.

This is much less of an issue within the communities that attract experienced and competent developers. We're talking about C, C++, Python, Haskell, Erlang, Scala, and even Java and C#. Thanks to the wider and deeper experience that the developers in these communities tend to have, we see far fewer blatantly obvious mistakes being made. That's not to say they don't happen; they do. But the quality of the software that is produced is generally much better than what we see produced by the JavaScript, PHP and Ruby crowd.

It's easy to pretend that these very real differences don't exist, but the reality is that they do.

Re: Mean Stack

#85

Earlier quoted context omitted.

The numerous flaws with JavaScript (the programming language) are well-known and well-documented. A few search engine searches should bring up ample information. As for its "greatest flaw", I think that may be the JavaScript community, and the general attitudes within it. There is, unfortunately, a very high degree of ignorance within the JavaScript community. There are far too many JavaScript programmers who only kn…

You haven't outlined any points here about the language. I don't want Google to tell me what other people think its flaws are, I was asking you what in your experience are its flaws. Looking at your past comments on HN, you seem to leave comments like this a lot. I guess I'm looking for lists like this: C/C++ 1. The preprocessor allows for horrid misuses with a broken "macro" system that doesn't deserve the name comp…

Why do you think that the flaws that I've personally experienced with JavaScript differ from those that others have experienced and already documented? The flaws are there regardless of who is using JavaScript.

I'll list some of the most obvious and serious ones for you, since you seem incapable of finding this basic information on your own:

- Its type system is horribly broken.

- Its scoping is horribly broken.

- Its comparison operators do not behave sensibly.

- Its prototype-based OO system is impractical, and quite poor compared to other prototype-based languages.

- Its lack of class-based OO leads to awful hacks using its awful prototype-based OO functionality.

- Its lack of support for proper modules and namespacing makes large-scale software development tedious.

- The fact that something as obviously-dumb as semicolon insertion is even conceived of and supported in the first place.

- It's so rife with other bad language features that one of the most widely-respected books about it, Crockford's "JavaScript: The Good Parts", is all about not using large parts of the language.

- Its standard library is extremely limited, and what does exist works quite poorly.

- Its tooling (editors, debuggers, profilers, etc.) is lacking in many respects, and is often entangled within web browsers.

- Its performance is lacking.

- Its community is generally inexperienced and incompetent, and produce a lot of very bad code.

- There's little evidence that things will improve in the future.

While other languages have flaws, none (aside from maybe PHP) have as many utterly stupid, unnecessary and unjustifiable flaws as JavaScript does. And at least these other languages make some real effort to eliminate such flaws, as well. We just don't see that from the JavaScritp community.

Re: Mean Stack

#86

Earlier quoted context omitted.

You haven't outlined any points here about the language. I don't want Google to tell me what other people think its flaws are, I was asking you what in your experience are its flaws. Looking at your past comments on HN, you seem to leave comments like this a lot. I guess I'm looking for lists like this: C/C++ 1. The preprocessor allows for horrid misuses with a broken "macro" system that doesn't deserve the name comp…

Why do you think that the flaws that I've personally experienced with JavaScript differ from those that others have experienced and already documented? The flaws are there regardless of who is using JavaScript. I'll list some of the most obvious and serious ones for you, since you seem incapable of finding this basic information on your own: - Its type system is horribly broken. - Its scoping is horribly broken. - It…

> ... since you seem incapable of finding this basic information on your own:

That's a pretty rude response to an honest question.

Thanks for the list.

Re: Mean Stack

#87

Earlier quoted context omitted.

I always seem to see you in any thread involving "new" technologies that you find "inferior", most of which are not very new and, like all technologies, are tough to put on a precise inferiority/superiority scale in an objective context-insensitive way. I'm beginning to move past annoyance to pure curiosity - why do you care so much what technologies other people find useful? In what way does people's enjoyment of Ru…

Software doesn't exist in a vacuum. It often has a lifespan far in excess of the involvement of the original developers. It can also have a very serious impact upon its users, its subsequent maintainers, and any organizations they may belong to. I could not care any less if hobbyist developers want to use Ruby on Rails, JavaScript and NoSQL for own their personal projects that nobody else ever uses or has to maintain…

Your goal of seeing higher adoption of technologies you like and lower adoption of those you don't makes sense but your approach is misguided. I rarely see you speak positively of technologies you like, rather than negatively of those you don't. I rarely see you reasonably describe the shortcomings of technologies you don't like from a place of apparent expertise, rather than making ungrounded categorical statements ("hobbyist", "objectively-flawed", "horrid", "poor") about technologies that it doesn't seem like you have bothered learning about in any depth except that necessary to confirm your biases.

Plenty of people would prefer to inherit my broken software using horrid technologies than your broken software using different horrid technologies, and vice-versa. This unnecessary us-versus-them-ism in technology drives me crazy.

Re: Mean Stack

#88
post #13

I’m not a NoSQL expert, but everyone I know who is considers Mongo a joke in production. And I would never use Angular in production apps (“painfully slow” is reason enough but I have ideological differences as well). That makes saying “no” to this stack easy.

What about asking these people: http://www.mongodb.org/about/production-deployments/ if it's a joke in production?

I saw a couple engineers from Craigslist present at a Mongo event within the last year, and they strangely acted as if Mongo were a joke—that is, they treated it like a playground, continuously talked about how and where it broke, and continuously reminded us that they didn't care about its data integrity because they were just messing around.

Re: Mean Stack

#89

Earlier quoted context omitted.

Who the heck just uses mongo as a scaffolding tool? I don't know anyone who does that.

what he meant (i think) is use MongoDB in a lean manner - which is to say, try to get something off the ground, and if it takes off, switch to the most appropriate DB then (which might be Mongo). I think this is the killer use of Mongo IMO.

Yeah, this is exactly what I meant.

Re: Mean Stack

#90
post #47

Earlier quoted context omitted.

NoSQL is a regression in a sense. Or, if you prefer, a conscious trade-off. Providing the same guarantees as traditional relational databases becomes difficult at scale, so you trade some of the features for higher scalability. For example, you can have a very highly available, distributed key-value store, but with no transactions across multiple rows, no query language, no schema, no indexing, etc. If you think abou…

You want http://rethinkdb.com .

It's not quite what I had in mind. RethinkDB schemas are not strictly enforced, and it does not have ACID transactions. I'd much rather see an open source implementation of Google's Spanner, but that's probably a long way off.
Post reply on HN