Live data from Hacker News

Why can't I write code inside my browser?

tomcritchlow.com

281–290 of 624 posts

Re: Why can't I write code inside my browser?

#281

Earlier quoted context omitted.

You say it like pointing out an obvious problem is hard to do. Programming is a very complicated activity, and of course it can be improved. Anything can be improved. There is no doubt about that. The question is whether it is easy to improve. Writing good software is hard. You say it like programmers have ego, but you know what is better than ego? Money. People would lay down their ego to make money (by making a mor…

I write code for a company worth hundreds of millions every day, with a world-class user rating. I don't use the command line at all. I CAN use the command line. I know very well how to do it. I have done it for decades. But when I program for iOS, I don't need it. The tooling is good enough that I never need to. So I don't. There's no reason this couldn't be the case for other environment too. There's nothing magica…

This reminds me of the timeless quote:

> Your scientists were so preoccupied with whether or not they could, they didn't stop to think if they should.

You can take that either way :)

Re: Why can't I write code inside my browser?

#282
post #34

A lot of you guys are hating on the author for not being able to figure out how to install Nodejs. Yet if you're old enough to have gotten started in the time of JavaScript in the late '90s, or QBasic in the early '90s, or systems like the BBC Micro or TRS-80 in earlier decades, you should know what the author's talking about. Everything you need to program is just there . It just works , there's no extra installatio…

But QBasic etc. were just basic text editor with a "run" option. They didn't have many fancy IDE features. You didn't even have syntax highlighting most of the time. I don't think editing a html file locally is more painful than figuring out those tools back then. I would even argue that's a good place to start because a full blown IDE can also be really intimidating if you don't really know whats happening.

Re: Why can't I write code inside my browser?

#283

A while back, I met a fashion designer who is also an expert seamstress. And I do believe most music composers can play the piano. You have to learn to walk before you can fly.

How many music composers have to build their own piano from a kit?

Re: Why can't I write code inside my browser?

#284

Earlier quoted context omitted.

No, I was just saying that in my vast experience the two things that you described as: "absolutely nothing whatsoever to do with programming. Nothing. Zero. Zilch. It is completely superfluous knowledge" Were indeed critical components to all of these systems, and organisations, and that it's not a big ask to require a programmer to know them. Also, on what authority do you decide what is programming and what isn't?

The whole point is, there is no reason to require a programmer to know them. That is an arbitrary choice we have made. We could make a different choice, and not require a programmer to know these things. They could do everything just as well without knowing this, if we let them.

When I was travelling through Italy, I learnt a phrase from programmers there, "If my mother had wheels, she would have been a bike" - and it's a criticism of hypothetical situations like your answer above.

Saying "This is arbitrary if we made a different choice things would be different" is a total meaningless statement because you just move the bar and then say if the bar is moved things are different.

My argument is that eventually all implementations are embedded in reality, if not /usr/local/bin and $PATH then some other abstraction that is equally arbitrary - but in the real world, the one we live in, we have /usr/local/bin, $PATH and a bunch of other "arbitrary" lines that have to be somewhere because without these lines (or some lines) there is nothing. And you have to know them, whatever they are.

Because you know what happens if you don't know them? You end up with people writing blog posts about how difficult programming is, ranting they cant install ruby or pip or node.js, like the article above. You have to learn the underlying system, whatever it is. In this case, it's /usr/local/bin and $PATH.

I think you're not arguing that you shouldn't know the underlying system (correct me if I'm wrong) but you're more saying that these particular abstractions are inconsistent or distasteful - if that's the case, let me assure you that no implementation is perfect, and programmers for nearly 100 years now have been trying to come up with the perfect abstraction that requires no knowledge below, but in reality, it never works, because theres always exceptions, or the abstraction is not flexible enough to apply generally enough to be useful, thats like the two forces that push and pull the argument both ways.

I've come to learn that you must just learn the underlying system, because you'll be able to diagnose better. To that end, you must learn sysadmin, you must know $PATH and you must know the underlying system. Go and have a look at the programmer competency matrix - this stuff is in there

Re: Why can't I write code inside my browser?

#286

Earlier quoted context omitted.

Yes, of course. Because your other tools are so bad that even the command line is easier. I am saying, the fact that those tools are bad is not a given. We could have better tools.

And do you have any proof of that? Because in my humble opinion, the command line is great solely because keyboard is (up to now) the best input device we have invented. Any graphical tool requires eye-hand coordination, which slows things down considerably. Using keyboard you basically only depend on your muscle memory and can input commands to the machine way more quickly. What you seem to miss is that developers t…

The proof is that I develop for iOS, and I do not need to use the command line at all for this. Using it does not make anything easier and more efficient. It live this every day.

I can use the command line. I've used it for decades. I know it intimately, and I know just how many problems it has. Problems it doesn't NEED to have, but problems that we have just decided will be there, and we learn them, and live with them, and then complain when someone points out that they are, in fact, problems.

Developer tools really, REALLY aren't the best tools created, in any way, shape, or form. They are generally AWFUL. But we've convinced ourselves that we are clever if we know how to use these awful tools.

Re: Why can't I write code inside my browser?

#287
Yes, in order to do X you need to learn how to do X. Complaining about not being able to program when you didn't spend a minimal amount of energy to understand the basics of how your computer works is worthless, just like this article.

Re: Why can't I write code inside my browser?

#288
post #96

I try to keep my comments nice on HN but in this case I can't, I've met this kind of person many times now and I just can't hold back. The author is lazy, and is channeling his energy into complaining rather than learning. He believes he is by default an expert on the 'user friendliness' of programming. His comments don't really make much sense, and come across as whining that should be ignored. "People hate command…

> "People hate command lines - not only do they LOOK scary, they give weird unhelpful error messages and… you have to type everything. Ugh. " Just for context: he'a talking about installing ruby/npm/node here, not about coding. Not about visual coding! The next line makes it obvious: > Can you imagine if the beginner version of Node.js came pre-installed with a GUI for managing and running your code?

> Can you imagine if the beginner version of Node.js came pre-installed with a GUI for managing and running your code?

I feel like I almost have that in jetbrains tools. I can browse through composer packages, discover package names, and select specific versions. Not quite the same, but was a pleasant surprise to accidentally discover recently (but... it's still just wrapping CLI stuff, AFAICT).

Re: Why can't I write code inside my browser?

#289
post #96

I try to keep my comments nice on HN but in this case I can't, I've met this kind of person many times now and I just can't hold back. The author is lazy, and is channeling his energy into complaining rather than learning. He believes he is by default an expert on the 'user friendliness' of programming. His comments don't really make much sense, and come across as whining that should be ignored. "People hate command…

I agree with you to an extent.

But there is a balance to be spoken of here between laziness and learning. Laziness, in a way, is a driver of efficiency. You want to do something in a way that requires less effort.

It is learning, though, that gives you the tools you need to be "lazy" (if we agree on reading "lazy" as a desire to do less, as opposed to a desire to not doing anything at all - there could be debate here). In turn, finding a way to do less work takes work itself.

I guess what I'm trying to say is that these complaints could hold some validity, it's just a shame that the author doesn't seem like the type to do anything about it.

Re: Why can't I write code inside my browser?

#290

Earlier quoted context omitted.

> /usr/local/bin is an implementation detail from an OS nobody has used for decades Linux, MacOS, the BSDs... They're very much used today, not just decades ago. the /bin, /usr/bin and /usr/local/bin are very simple to understand after around 10 minutes of looking at the contents of / (root). */bin/ has binaries, */lib/ has libraries, */include/ has headers. Its as simple as it gets, I dont see a way you could make a…

And what does "usr" mean?

User System Resources
Post reply on HN