9 ms·
Only tangentially related, but the "rant" by Ryan Dahl (node creator) when he left Node day-to-day is worth a read: https://gist.github.com/cookrn/4015437 http
by gkoberger 13y ago
Only tangentially related, but the "rant" by Ryan Dahl (node creator) when he left Node day-to-day is worth a read:
https://gist.github.com/cookrn/4015437 https://gist.github.com/cookrn/4015437
- palvaro 13y agosorry, why did you say that was worth a read? it doesn't appear to have any content.
- lhnz 13y agoYou could possibly draw a connection between Ryan Dahl pleading for simplicity in that gist, and Isaac Schuetler claiming that they would not be adding extra complexity to Node.JS. By the way, your post comes off as unnecessarily rude.
- lmm 13y agoYour post comes off as unnecessarily passive-aggressive. If we're pointing these things out.
- arxpoetica 13y agoThere's a Confucius saying in here somewhere.
- SimHacker 13y agoI beg to differ. It was just necessarily passive-aggressive enough. On the dot.
- deleted 13y ago[deleted]
- javis 13y agoI thought it was good.
- deleted 13y ago[deleted]
- z0r 13y agoI wonder if Ryan Dahl is following in Chuck Moore's footsteps now. http://www.ultratechnology.com/forth.htm http://www.ultratechnology.com/forth.htm
- aroman 13y agoTo use his language, I agree that the "whole thing fucked", but I also think it's fun. I enjoy the fact that things are a challenge and sometimes quirky. Sure, down in the trenches it makes you want to pull your hear out. And the world would probably be more productive if software interfaces and programming languages were completely frictionless. But it would also make programming, to me, less fun, challenging, and enjoyable. We are imperfect beings living in an imperfect world, and I don't think changing the status of either or the former or the latter would create the nirvana ry is alluding to.
- coldtea 13y ago>To use his language, I agree that the "whole thing fucked", but I also think it's fun. I enjoy the fact that things are a challenge and sometimes quirky. The problem is that the wrong things are fucked and that's neither challenging nor fun. E.g configuring some system so you can get your software built correctly is neither fun not challenging. It's merely tedious busy-work. Actually solving problems, that's the fun part.
- aroman 13y agoThat's precisely what I'm disagreeing with. Not everyone sees configuring a system as "merely tedious busy-work". I for one like setting things up. It might be frustrating, but there's also an enjoyable element of accomplishment when you overcome something frustrating. It might not be the kind of fun and challenging you're looking for, but please, try not to state state opinion as fact. One man's tedium is another man's pleasure, as much as I too enjoy solving the bigger-picture problems. There's a reason both Gentoo and Arch exist :)
- coldtea 13y ago>That's precisely what I'm disagreeing with. Not everyone sees configuring a system as "merely tedious busy-work". I for one like setting things up. And what you're saying is precisely what I'm disagreeing with. I'm sure there are people that like those things (mostly beginner's with Unix and such, tinkerers etc). It's a form of passtime. That doesn't mean it's challenging in any creative way. It's a boring ass brain puzzle that tons of people are solving again and again. The sense of "accomplishment" of getting the dependencies to build X right, might be valid if you just started building things and getting to know how compilers, libs etc work, but it's grows old very quickly for normal people and it's a false accomplishment after that initial stage. Actually saying you enjoy that is like saying you like boilerplate code, because that's exactly what it amounts to. >It might not be the kind of fun and challenging you're looking for, but please, try not to state state opinion as fact. Sure, you can find people that like everything, even the most boring ass shit. I'm sure there are people that enjoy calculating logarithms manually too. But I wouldn't call such bizarro outlier fun as fun in the accepted sense. But it's a fact (I've seldom seen anyone state the opposite, tons of texts from Stack Overflow to blog posts support this) that most programmers/hackers tear their hair out to get rid of those "fun" tedious configuration/setup/figuring dependencies etc work and move to the real part. I've actually never read an interview with a hero programmer where he said that he likes those parts of programming -- but have read tons of those that say the exact opposite, from Alan Kay to Jamie Zawinsky. Actually a large part of programming is exactly about removing (automating) those tedious parts.
- enobrev 13y agoI certainly appreciate Ryan Dahl's opinion and absolutely agree with the conclusion (which has done incredibly well for me in my career), but these things are not mutually exclusive. One can put user experience above all and still hone their tools and habits while working towards that goal.
- grannyg00se 13y ago"The only thing that matters in software is the experience of the user." Hell no. Software comes from software development. And software development is a process. My editor, programming style, directory structures and other personal organizational behaviours do matter. This is work we do, and while the end user's experience may be identical regardless of very different personal development style options, the one which gives me the most comfort and work satisfaction is superior. So yes, I will configure my editor so that I don't have to keep repeating the same keystrokes dozens of times throughout the day. I will align things the way I see fit, and I will endeavour to study and improve my skill with the language. Not only so that I'm more efficient, but because it will bring increased contentment to the process of development.
- coldtea 13y ago>Hell no. Software comes from software development. And software development is a process. My editor, programming style, directory structures and other personal organizational behaviours do matter. This is work we do, and while the end user's experience may be identical regardless of very different personal development style options, the one which gives me the most comfort and work satisfaction is superior. Only nobody cares about you. As in a restaurant, people care about the food, not the cook. And even if you (and I) mattered, developers of a piece of software are N, where users are 1000N or 100000000N. They matter massively more. Oh, and there will always be programmers as long as there are money to be made, so the "without me [in particular] there would be no software" argument doesn't hold much either.
- doktrin 13y ago> As in a restaurant, people care about the food, not the cook. The health inspectors care about both the food and the cook, and the latter's workflow is certainly scrutinized. If we're going to beat this analogy to a bloody pulp, the health inspector in software land would be technical debt and colleagues. Not taking care of the process will bury the project, and the users with it. Ryan Dahl's brilliant, but I don't think his entire statement should be adhered to verbatim. It's solid guiding principle, nothing more.
- dictum 13y ago>The only thing that matters in software is the experience of the user. That is true, but the experience of the people developing the software matters too, as it informs the care that will be put into creating a better user experience. Let's say you're creating an application and you're the sole developer and designer of that application. When you have a predictable and reliable development environment that emphasizes good, well defined practices, you reach a state of flow with more ease when you're coding, and your project gets developed faster. Faster development allows you to iterate quickly and better test your assumptions about the user interface and the overall user experience. It gives you more time to design the application. All in all, with a better development experience, the developer gets more time to create a better experience for the user. I bet Ryan's frustrations—all the abstractions and crappy interfaces—come from years of legacy technologies and the need for compatibility and integration with other systems, and sometimes as preemptive measures to avoid security issues. When they were made, there was a reason for their existence.
- chrisrogers 13y agoConsider systems like the GDS infrastructure backing the travel industry. These systems are long-lived (50y+) and are the backbone of all travel booking and scheduling. The only thing that matters for them is not the end user experience, it's the stability of the system, and society's reliance upon its operation. It's robust and it was produced at the right time to carry an industry into the efficient monster it needed to be to succeed. A whole industry was built on it layer by layer, and what we now have is a complex beast composed of ancient IBM hardware, crazy nested and disparate schemas, greenscreen scrapers, and probably more than a few dashes of COBOL. One can't expect the system to stop evolving while we take a 5 year breather to rewrite it all.
- 10098 13y agoThis guy is either pretending to be an idiot or really does not appear to understand just how complex everything is. The whole "thing" that is "fucked" is there to manage that insane complexity. If you don't have good tools, good libraries or don't know how to use them, you won't be able to deliver on your promise of "solving the problem", because you will be overwhelmed by the complexity monster. I'm sorry, I just can't get over it. "Just solve the problem" - I hate that attitude. That's how shitty software is born. Incompetent schmucks give birth to unholy, unmaintainable, monolithic code because they think it's okay to not know your shit as long as you "solve" the problem.
- ulisesrmzroche 13y agoRyan Dahl created Node. He's not just some schmuck.
- 10098 13y agoI know. That doesn't mean he can't be incorrect about something. Let's not appeal to authority here.
- ulisesrmzroche 13y agoFine, let's all go back to business as usual of calling people idiots to make ourselves feel superior, HN.
- deleted 13y ago[deleted]
- 10098 13y agoAlso, I didn't mean to say that he writes crappy code. What I meant was, those who already write crappy code will now be less inclined to improve because some tech-celebrity said it's okay.
- ulisesrmzroche 13y ago
- e12e 13y agoThis seems to parallel some of the work VPRI is doing, eg from: http://www.vpri.org/pdf/tr2010004_steps10.pdf http://www.vpri.org/pdf/tr2010004_steps10.pdf STEPS Toward Expressive Programming Systems, 2010 Progress Report Submitted to the National Science Foundation (NSF) October 2010 Alan Kay et al "If computing is important—for daily life, learning, business, national defense, jobs, and more — then qualitatively advancing computing is extremely important. For example, many software systems today are made from millions to hundreds of millions of lines of program code that is too large, complex and fragile to be improved, fixed, or integrated. (One hundred million lines of code at 50 lines per page is 5000 books of 400 pages each! This is beyond human scale.) What if this could be made literally 1000 times smaller — or more? And made more powerful, clear, simple, and robust? This would bring one of the most important technologies of our time from a state that is almost out of human reach—and dangerously close to being out of control—back into human scale. (...) Previous STEPS Results The first three years were devoted to making much smaller, simpler, and more readable versions of many of the prime parts of personal computing, including: graphics and sound, viewing/windowing, UIs, text, composition, cells, TCP/IP, etc. These have turned out well (they are chronicled in previous NSF reports and in our papers and memos). For example, essentially all of standard personal computing graphics can be created from scratch in the Nile language in a little more than 300 lines of code. Nile itself can be made in a little over 100 lines of code in the OMeta metalanguage, and optimized to run acceptably in real‐time (also in OMeta) in another 700 lines. OMeta can be made in itself and optimized in about 100 lines of code." More: http://www.vpri.org/html/writings.php http://www.vpri.org/html/writings.php
- woah 13y agodid this stuff actually work?
- e12e 13y agoAccording to the last yearly report that is available: http://www.vpri.org/pdf/tr2011004_steps11.pdf http://www.vpri.org/pdf/tr2011004_steps11.pdf "This year we are able to write this entire report in the Frank part of STEPS, including producing the PDF version for NSF’s web site. We can give comprehensive high‐quality, high‐resolution presentations using STEPS which include live code and in situ demos, and which show working versions of a number of the document types derived from the STEPS “universal document”." So yes, they have something that is working. Unfortunately, as far as I can figure out - the "Frank part of STEPS" isn't really available as such. There's a few thing to play with, like: http://piumarta.com/software/cola/ http://piumarta.com/software/cola/ http://lukego.livejournal.com/16036.html http://lukego.livejournal.com/16036.html key quote: "Here's what a hello-world-esque operating system looks like" There's also: svn co http://piumarta.com/svn2/idst/trunk idst head -2 idst/function/examples/tcp/00_README This example demonstrates an alternate 'shell' for Jolt and how to build a tiny TCP/IP stack using it. And there's also: http://tinlizzie.org/ometa-js/ http://tinlizzie.org/ometa-js/ (see "go to project", top right).
- tipiirai 13y agoHe is so right! No wonder why he wrote such beautiful and useful piece of software. A sort of genius. Thank you, Ryan!