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

I use it through both the chat interface and the Cursor IDE: https://www.cursor.com/


Just checked Huncwot out - looks like a great project, thanks!

And congrats to mojombo and team! You probably already use something Tom wrote without realizing it.


Congrats on hitting 1.0.0! Thanks for all the hard work. The Elixir community is producing some really exciting stuff.


Here's a quick (incomplete) list of web innovations you can thank the Ruby community for either popularizing or inventing outright:

* REST * Many parts of ES.next * Front-end build tools * CSS pre-compilation * JS transpilation

I spent years happily using multi-line template strings while JS developers informed me how idiotic I was for using a transpiler. Since Ruby's goal is to be a language that brings joy to the user, I see nothing wrong with bringing that ethos to other languages. You yourself acknowledge the impact it had on the development of JavaScript.

We in the Ruby community will keep innovating, and you keep hoping that we'll stop, and we'll see which happens.


Ruby did not popularize nor invent REST. The other points I don't feel like arguing about..


I didn't claim that the Ruby community invented REST. Rails 1.2 (2006) was the first major web framework to implement it. Do you have any evidence to support your claim that I'm incorrect?


> REST

No. Rails populated a form of REST and everybody likes to pretend everything Rails is REST and there are a ton of frameworks trying to imitate Rails' approach to REST but Rails neither invented REST nor was it the one thing making REST popular. It was a major factor, yes, but claiming this purely as an accomplishment of Ruby is silly.

I would be willing to give Ruby the point for MVC because of ActiveRecord but MVC is not synonymous with REST.

> Many parts of ES.next

Again, no. ES.next is nothing like Ruby. Some of the syntax was influenced by CoffeeScript (nobody doubts that -- in fact, TC39 members have explicitly referenced it on more than one occasion) but the features are neither novel nor unique to Ruby:

* The class syntax is pretty much universal.

* The arrow functions are evidently influenced by CoffeeScript but look nothing like Ruby's lambda literals (which are the closest equivalent in Ruby). I think CoffeeScript's use of that syntax was actually pre-dated by C# but I may be mistaken.

* Template strings have no more in common with CoffeeScript's and Ruby's string interpolation than with the same feature in other languages. In fact, if anything, I'd say the interpolation syntax is borrowed from PHP -- but the backticks certainly aren't taken from any of them.

* Symbols are kinda like Ruby symbols if you tilt your head and squint really hard and then only focus on the name and not what they actually are. Again, the concept is neither novel nor unique to Ruby.

* Destructuring and rest/spread operators -- yeah, again, not unique or novel. Plus I think even Python preceded Ruby on that.

* iterators and generators -- again, closer to Python than to Ruby.

* import/export -- just an extension of the ideas of CommonJS which in turn aren't anything like what Ruby has.

* promises -- no, sorry, not Ruby.

* the object literal extensions -- again, not Ruby. Ruby doesn't even have object literals in the sense JS does (which is okay, it doesn't have prototypal inheritance either).

> Front-end build tools

No, seriously not. Yes, rake pre-dates grunt and gulp by a fair amount (as well as jake and other JS-based tools barely anyone seems to use anymore). But it certainly didn't invent them nor was the biggest factor in popularizing them. A lot of build tools before the Ruby (and now JS) toolchains came along were built in things like Java, in addition to the various less formalized build tools written in Python or simply bash.

> CSS pre-compilation

I may give you that. Less pre-dates Sass but started as a Ruby gem. Of course neither of them invented CSS minification and there were attempts at generating CSS before. Compass probably took the crown, though, even though front-end tools in generally have moved on to the Node ecosystem, which seems more appropriate for tools primarily concerned with JS (rather than Ruby, Java or bash).

> JS transpilation

Not really. Java-to-JS transpilation was the original hotness that opened up people to the idea. It was followed by various attempts to port other languages to JavaScript. I agree that CoffeeScript is the first one that gained major traction in the startup scene -- although most teams seem to have realised that the drawbacks aren't really worth it (not just the transpilation but the entire part where everyone has to learn a new language on top of a solid understanding of JS itself).

Yes, CoffeeScript was an important step in the evolution of JS but so were DHTML, pop-unders, JSS and animated mouse cursors and status bars -- and everyone agrees those were a bad idea.

The Ruby community is very vocal and self-important but it's neither as uniquely innovative nor as much of an influence as its members like to make it out to be. If PHP is the kindergarden of programming languages, Ruby is the angsty teenager complaining about how nobody understands them and writing blog posts about their deep insights gained from flipping through Atlas Shrugged.


> It was a major factor, yes, but claiming this purely as an accomplishment of Ruby is silly.

A major factor in popularizing it, as I claimed. Personally, I had never heard of it before DHH's 2006 RailsConf keynote. Could you point me to another web framework that had implemented it before 2006?

> Some of the syntax was influenced by CoffeeScript (nobody doubts that -- in fact, TC39 members have explicitly referenced it on more than one occasion) but the features are neither novel nor unique to Ruby.

Again, CoffeeScript was popularized by the Ruby community, as uptake increased greatly when it became a default in Rails. The syntax was heavily influenced by Ruby, which then found its way into ES.next.

> Front-end build tools

The Rails asset pipeline was actually listed as the inspiration for Brunch, the closest you can get to replicating its functionality in JavaScript. This went a long way towards popularizing the notion.

> I agree that CoffeeScript is the first one that gained major traction in the startup scene > although most teams seem to have realised that the drawbacks aren't really worth it (not just the transpilation...

Yes, and CoffeeScript first gained traction within Rails. You also seem to be discounting the obvious popularity of ES.next transpilers.

> The Ruby community is very vocal and self-important but it's neither as uniquely innovative nor as much of an influence as its members like to make it out to be. If PHP is the kindergarden of programming languages, Ruby is the angsty teenager complaining about how nobody understands them and writing blog posts about their deep insights gained from flipping through Atlas Shrugged.

This is rude, untrue, and unhelpful. Be civil. https://news.ycombinator.com/newsguidelines.html


> The syntax was heavily influenced by Ruby, which then found its way into ES.next.

I pointed out the major syntax additions of ES6 and to what extent they are based on Ruby or not.

> You also seem to be discounting the obvious popularity of ES.next transpilers.

I'm not. Babel and other "ES.next" transpilers are drastically different in spirit from CoffeeScript. With some exceptions (e.g. JSX and Flow type annotations) most of the syntax it adds to JS are either already part of the language and just not widely supported (i.e. ES2015) or experimental proposals for new language features intended to eventually land in a future JS spec.

CoffeeScript doesn't work because it requires you to learn a new language on top of JS. ES.next works because it's bleeding-edge JS (plus some speculative additions). The code you write for Babel today will likely run without transpilation in a JS environment a year or two from now.

This is a general trend in web technologies. CSS pre-compilers like Sass are being replaced or enriched by CSS "post-compilers" like postCSS (that consume vanilla bleeding edge CSS and spit out CSS that works today). JS transpiler languages like CoffeeScript are being replaced by ES2015 (and speculative ES.next) with compilers that translate the code to JS that works today (or yesterday, even -- Babel generally works fine with IE8/ES3 if you use the necessary shims and shams).

Your point is that Ruby's role to all of the developments you mention is essential and unique. I'm arguing it's not. By far.

The only remarkably unique thing about the Ruby community I keep noticing as an outside its rise and fall of the Brogrammer culture and the aftershock we're still experiencing to this day. But even that, I think, would have happened even if Ruby never existed.


> CoffeeScript doesn't work because it requires you to learn a new language on top of JS.

The folks that have been quietly productive with CoffeeScript for years, and have and continue to make millions of dollars because of it, would likely disagree with you on that point.

> Your point is that Ruby's role to all of the developments you mention is essential and unique. I'm arguing it's not. By far.

> The only remarkably unique thing about the Ruby community I keep noticing as an outside its rise and fall of the Brogrammer culture and the aftershock we're still experiencing to this day. But even that, I think, would have happened even if Ruby never existed.

Well, you've failed to sway me on that (by far), and the clear chip on your shoulder you have regarding the Ruby community as a whole leads me to believe your vociferous arguments to the contrary might be motivated by something other than your desire to spread the truth.


> other than your desire to spread the truth

I'm ranting. What ever gave you the idea either of us is talking about objective truths?


> I would be willing to give Ruby the point for MVC [...]

I wouldn't.


Could you name a major web framework that implemented the MVC pattern prior to Rails?


Spring? (Queue discussion on what is and isn't Real MVC(tm))

I will however agree that Rails probably should take most of the responsibility/blame for really bringing MVC to the forefront of web development


Right you are! I didn't realize it had beaten Rails to the punch by a year. But yes, I will stand by my claim that Rails was responsible for popularizing the notion in the wider web development community.


The "wider web development community" was using MVC; Struts and Spring built more websites than Rails did for several years.


You never said anything about web framework before, you said MVC. That's a different discussion. Although we were using MVC in Struts 1 back in what, 2001?


REST was either popularized or outright invented by Ruby?

What the f* are you on? Or were you born a few years ago and just worked with Ruby since then?

Really, how could somebody be so oblivious to this field in order to state stuff like that?


Could you point me to a major web framework that used REST before Rails 1.2 (2006)?

> What the f* are you on? Or were you born a few years ago and just worked with Ruby since then?

I've been using Ruby professionally for 10 years.


2006? Come ON!

How about the whole WSDL/SOAP services that appeared way before that? You're telling me that Rails was the one who came out with the modern REST ideas?

That's total tech illiteracy right there. Damn, you even had the nerve to defend that feeble argument.


WSDL/SOAP are not REST. I'm telling you that REST was popularized by Rails, because it was the first major web framework to use it. You've yet to refute that argument, but you do continue to be rude, so have a good one!


>WSDL/SOAP are not REST

Well if you define REST as "Web Apps developed with RoR" then I guess you're right, Rails is definiteley the pioneer of Rails development.

>You've yet to refute that argument

There was (at least) Tomcat deployed and quite popular, and yep, everything moved through REST interfaces. Even with that one and the huge success it had in the enterprise world, I wouldn't dare to say that the success of REST relies on Tomcat anyway.

REST hit it big with the www, www is REST's killer app. Those things are quite literally the first ones you should know when you start developing for the web.


The funny part is that technically Rails and Rails-inspired REST frameworks get it wrong. They're just exposing the server-side models via REST interface and the server-side models in turn expose the database's tables. That's REST by the books but not particularly useful unless all you're interested is exposing your database tables to the clients.

Automagic REST APIs may be easier to do with "RESTful" MVC frameworks but what you really want is a domain-oriented REST API. But I digress.


Here's a handy test to determine if two technological terms mean the same thing: are they used interchangeably? If I said to someone, "oh that looks like you need a SOAPful interface," would they assume that I meant RESTful? Probably not, since they're two different technologies. The move to REST was actually inspired by the perceived deficiencies in WSDL and SOAP.

> The funny part is that technically Rails and Rails-inspired REST frameworks get it wrong.

Well, that's a bit tangential to my original point. I wasn't claiming that you specifically liked the way it was implemented, just that Rails, and thus the Ruby community, was responsible for its popularity. Despite the length of this thread, neither of you has managed to debunk that claim with anything resembling evidence.

Find a reference to Tomcat using REST before 2007, and give us the link. I'd bet you can't, since Rails was the first major web framework to implement REST.

> REST hit it big with the www, www is REST's killer app.

Since REST was invented in 2000, and the web itself had been around for a bit before that, I fail to see how this could be true.


"The World Wide Web itself represents the largest implementation of a system conforming to the REST architectural style."

- https://en.wikipedia.org/wiki/Representational_state_transfe...

"The first edition of REST was developed between October 1994 and August 1995, primarily as a means for communicating Web concepts as we wrote the HTTP/1.0 specification and the initial HTTP/1.1 proposal. It was iteratively improved over the next five years and applied to various revisions and extensions of the Web protocol standards."

- Roy T, Fielding, Architectural Styles and the Design of Network-based Software Architectures, 2000

Most interesting is Roy's presentation at RailsConf Europe in 2007 (http://roy.gbiv.com/talks/200709_fielding_rest.pdf):

Use your brains!

- don’t design-by-buzzword

- don’t believe everything you read


This whole story seems like pretty poor form. You based your business, in part, on a closed-source product, failed to test your multi-platform product on... any of the other platforms you planned on releasing it for, and then wrote up a lengthy blog post blaming the author of same closed-source product for failing to address your pet issue, as if your business being dependent upon it being fixed should somehow be his concern.


Fantastic work! Thanks for sharing it with the community. I'm excited to check this out further.


> Great programmers use vim or emacs

These kind of generalizations aren't helpful, simply because they aren't true. Are vi and emacs still going to be in wide use 500 years from now? Likely not. Then it stands to reason that there might be a way to improve upon them.

I use an IDE because I don't have to sink an inordinate amount of time into customizing my environment, since that activity doesn't deliver any value to the folks that pay me. I'd prefer to let a really smart team of engineers set those tools up for me. I do not, however, assume that anybody that doesn't use an IDE must be inferior.


Is Visual Studio going to be in use 500 years from now? Light Table? No.

The people who made Visual Studio have not made something that is smarter for everyone's work. Maybe your work just doesn't require any customization. That doesn't mean nobody should ever want customization.


> That doesn't mean nobody should ever want customization.

I fail to see where I made that claim. IDE's are also customizable - I would argue that they are, in fact, much more customizable than either vim or emacs, simply because of the breadth of features one may customize. I was addressing the parent's claim that "great programmers use vim or emacs."


Saying that you "don't understand" allegations of sexism at Amazon, as a white man, is going to be tough for folks to accept. You've likely never experienced the sexism. As a fellow white man, I've never really dealt with racism directed at me in general society. Does that mean I should assume it doesn't exist outside my personal experience?


"How would adhering to this work against a specific gender? How could being an attentive, respective leader, who is vocally self-critical and candid be a bad thing?? Even if this could logically happen based on gender, of all things (and I can't for the life of me rationalize how) HR is in the room for promotion and review discussions to ensure that what Jodi and David refer to doesn't happen."

Clearly you have no empathy for gender issues. Discrimination is usually NOT logical, and as a man working in a leadership role, being a bit more humble about other gender's experiences and feelings would make you more credible. At all credible.



I use Marionette: http://marionettejs.com/

1. You can grasp the basics in just a few hours, but obviously this is entirely subjective. A week-long training course will really get you going, though. The nice thing in terms of learning it is that the maintainers consider Marionette the "non-framework framework," in that it's just JavaScript, with no new paradigms to learn.

2. Hmmm, 3 for me, but that's also subjective. The more work you put into developing a sane architecture, the higher this number will be, but Marionette doesn't really impose an architecture on you, so YMMV.

3. 3, but see caveat from #2. Depends on how you write your code, really.

4. I chose it because, as stated above, "it's just JavaScript." I don't have to get my team up to speed on an entirely new development paradigm in order to use it. It's not really a "framework," per se, since you aren't given as much functionality out of the box as you would be when writing an Ember app. This means there's less chance of being hemmed in by the limits of the framework. This is a familiar tradeoff - a larger framework that gets you up and running faster, but with more chance of encountering an edge case that it doesn't fully support, vs. a smaller library that requires more up-front work, but is easier to mold to fit your own ends when necessary. In a few years, as the larger frameworks grow more mature, I'll be more likely to use them in my projects.


I'm surprised you didn't mention backbone once... Are you using marionette without backbone?

BTW, skeletor here (I think we may have worked together before, very very recently)


Haha, hey man! No, it's not really possible to decouple Marionette from Backbone, I just don't like typing "Backbone Marionette" every time, so I just use "Marionette." But for the uninitiated, Marionette is indeed a layer on top of Backbone.


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

Search: