Live data from Hacker News

The self-hating web developer

joequery.me

121–130 of 214 posts

Re: The self-hating web developer

#121
post #69

Earlier quoted context omitted.

I agree with everything else you say, but please, for gods sake, do not put Php in the same basket as ruby or java. Just don't start with PHP. EDIT: I am being downvoted. But I will say this again. I do not care about what you use for programming in school. but, Do NOT, under any circumstances, start your programming career with P. H. P. Never. Never...ever.

PHP is perfect for newbies. It's flexible. Has lots of functions built in. Several mature frameworks available. It's in active development. Hugely popular so lots of people to ask. Easy to set up a dev environment. No need to learn server admin as almost all hosting services supports it. I could go on and on.

It's certainly convenient for getting started, but I think he wants to say that the drawbacks of choosing PHP outweigh the benefits.

I started out with Java, moved on to Python, and now I'm using Clojure. Every language & ecosystem -combination is some sort of trade-off, but one could reasonably make the case that Clojure is the best trade-off currently available.

Whatever he does, he should not get stuck using PHP because there are much better tools available.

Re: The self-hating web developer

#122

The "language hate" in programming is truly cancerous. I know several people who started programming only to get twisted and turned around by experienced developers saying, "Don't learn PHP" then "Rails is a joke and doesn't scale well." I talk to them a week later, and they're trying to build a simple web app in functional Haskell, and their environment is all messed up because they are using a zsh configuration the…

Momentum is the thing that truly matters.

That's certainly true. You learn by doing stuff. But PHP actually is a bad language, and the guy would be better off starting with something else.

Why use PHP for X years until you realize you need to move on, when you could start out with something you can still use even after that point? Even worse, he could get stuck using PHP because it's comfortable and he's used to dealing with its brokenness.

Re: The self-hating web developer

#123

Earlier quoted context omitted.

I worked in embedded programming, systems programming and, now, web dev. No. The "quality of people" is not generally the same or, more specifically, you're less likely to find PHP coders among system developers.

If you don't mind my asking, why aren't you still doing embedded programming? I'm a web developer looking to move to embedded programming and I'm always curious to hear about why people made the opposite decision. :)

Not being aware of the parent poster's motives, I'll offer the exponentially larger job market for web development as a reasonable justification. While the vast bulk of organizations need web development done, embedded/systems programming is a relatively small niche.

Re: The self-hating web developer

#124

Earlier quoted context omitted.

You are right, or course, in terms of semantic politeness. The OP is, however, referring to the difference between say a ruby developer versus someone who just writes html and css. If both are within the category of web developers, what are some names to distinguish the two?

Front end vs. back end.

Where does JavaScript belong then? I believe it's the most important thing for a front end dev.

Re: The self-hating web developer

#125
post #119

Earlier quoted context omitted.

DNS, Javascript, JSON, TLS and certificates, client side frameworks. I always find it amazing that people recommend web programming to beginners. The amount of stuff you have to learn all at once as a programming beginner is really overwhelming when you are just writing a simple local program, never mind adding all the complexity of networking and deployment and server config and the half dozen web techs. I think a l…

I think JS in the browser is a great way to start developing these days. The setup is close to zero (a script tag), the dev/build/deploy cycle amounts to saving the file and reloading the browser, and the language itself, while far from perfect, is quite typical of many widely used C-type languages. I'd say this is probably the optimal environment for someone looking to learn programming. On the server, something lik…

>I think the big reason for suggesting web development to beginners is interpreters and their ecosystem. Learning an interpreted language is much easier, IMO, for beginners than JIT or AOT compiled languages because the tool chains dev/build/deploy are simpler and many times invisible to the user.

If you want to do web dev in python then you need a local python environment setup (which is actually trivial on desktop Linux or OS X), and that is no different from somebody using python for local programming. Except their code will be far simpler since they can just read standard input and write to standard output, without having to worry about parsing https requests and constructing valid HTML just so that the results of their basic fizzbuzz code is visible. And they won't need to worry about deploying a server, setting up the domain names, setting up a web server and so on.

Setting up a server is also more intimidating because you move into the world of things costing real money and your mistakes being publicly visible. If there's bugs in my small local programs that I write to educate myself then nothing happens the fact majority of the time (rm -rf style bugs can happen of course). If I screw up deploying my server, or do something insecure in php etc, then there are public facing consequences of that (my site gets pwned).

Re: The self-hating web developer

#126
post #20

There are few things in life more important than choosing one's peer group well. The Internet gives you many more options than we had available prior to the existence of it. Choose wisely and re-evaluate that choice periodically to see whether your peer group continues to represent your goals and values. Why? Your peer group literally gets arbitrary code execution on your brain. (It's a flaw in MonkeyBrainOS 1.01 whi…

I wanted to say something like your comment is just 1st order making people feel bad about 0th order making people feel bad, but then I'd be 2nd order making you feel bad about 1st order making people feel bad about 0th order making people feel bad, so then I just thought about how I felt and it was bad. What a mess. Good points about the importance of choosing a good peer group, I totally agree. It's really hard whe…

It would depend on what you were actually feeling behind your appraising comment, would it not?

On the one hand, one tacitly feels contemptuous towards the other group and tries to come across as dispassionate in their appraising comment. On the other hand, one feels considerate (or neutral) and simply calls a spade a spade in their appraising comment.

When you take the entire context of people's interactions over time into consideration, the former is likely to be hurting (overall) and the later is likely to be helping (overall) even though certain specific instances may come across as the opposite.

tl;dr - feelings and vibes (over time) matter more than words (in individual instances).

Re: The self-hating web developer

#127
post #104
post #57

Earlier quoted context omitted.

"Of course, I'd also suggest that whoever was the genius who thought it was a good idea to read things ONE F★CKING BYTE AT A TIME with system calls for each byte should be retroactively aborted. Who the f★ck does idiotic things like that? How did they not die as babies, considering that they were likely too stupid to find a tit to suck on?" - Linus Torvalds, principal author of the Linux kernel

It's roughly put, but I sometimes wonder how people who appear to be doing really dumb things _did_ make it to adulthood....

Probably because the things they do aren't up to scrutiny. You don't know it's bad until someone/something comes along and tells you, or you just happen to discover a better way on your own (that someone else has probably already discovered). The computer doesn't shock you if you write terrible code, after all.

Re: The self-hating web developer

#128
It is easy to write shitty code as a web developer and get something to work, however unmaintainably and unprofessionally. That doesn't make it any easier to write excellent, clean, and extensible code. In fact, it makes it harder because you're more likely to find yourself in an organization which has been able to survive without being able to write clean and professional code.

Branching out into other domains can give you insights if you find them interesting, but if you do in fact care about web development, focus on taking pride in what you build as a web developer.

Re: The self-hating web developer

#129
post #116

Earlier quoted context omitted.

> if you chose PHP (or worse program in it because it was what you inherited as well) you are a "lesser programmer". If you choose php, I will assume that you. 1. Either is not aware of that php has a million gotchas that you need to avoid at every step. Take a look at the ever growing (!) list at /r/lolphp. 2. You don't see the significance of the aforementioned gotchas. For eg, you can show things like php's regist…

Your post is a perfect example of what the author is referring to: stupid people in the community trying to make others feel inferior for programming in a certain technology. When it comes to PHP, such posts are inevitable (that's how I know PHP is actually a good, useful language). About the people who post them, I will assume that you: 1. Are incredibly stupid (register globals has been deprecated for years) 2. Are…

FWIW, PHP 4.x was completely awful for large and/or OOP codebases due to the totally insane copy-by-default semantics, the need to use &= perfectly at every call site that returned an instance of a class, and a handful of reference-counting bugs that caused interpreter crashes and still weren't fixed when 5.x matured.

It's definitely gotten better; I feel like a lot of people who swore off PHP forever are remembering version four.

Re: The self-hating web developer

#130
post #110

Earlier quoted context omitted.

The problem is that "web dev" covers such a wide range of roles. "Uploading WordPress isn't web development" is a subjective statement, and a lot of people who can only do CSS and very minor code copy/paste/tweak get to call themselves "web devs." This OP sounds like someone who got in a rung or two above "uploads WordPress" and has convinced himself he needs to transform into a full-fledged ninja programmer in order…

> lot of people who can only do CSS I appreciate people "who can only do CSS". CSS is underrated skill but experienced CSS developer has to know about: - every browser quirk possible. - various standard hacks to workaround these quirks - preprocessors like Sass or Less - tons of completely non-logical CSS rules (eg: `margin: auto` will center only horizontally but not vertically ) - methodologies like BEM, OCSS or SM…

I agree. I've been trying for 6 years to form a coherent mental model of CSS that will let me look at a mockup and predict how it would be built.
Post reply on HN