Live data from Hacker News

The self-hating web developer

joequery.me

1–10 of 214 posts

Re: The self-hating web developer

#2
I've definitely had these feelings too - sometimes still do (the feeling of struggling with a problem i assumed should be easy). I also tend to naturally spread out my knowledge a little too thin on various projects and not really make meaningful progress on any of them.

Two things have helped for me - one is to have a useful project in mind for the thing you are learning, so you have a payoff at the end. The other is digging into the details of the thing to really understand the subject - and make a mental note that you're implicitly committing to struggle and frustration in exchange for the reward of knowledge. If you aren't willing to struggle you won't get very far in any subject. It's great to have the initial interest/spark, but perseverance is what really changes you as a programmer.

Re: The self-hating web developer

#3
That's sad.

Web development is hard for all the wrong reasons. There are so many layers of bad, half-broken stuff to deal with, encapsulated in new, half-broken stuff. Worse, it has fads. Sign: "It has been [0] days since the last new Javascript framework." Web developers must run very hard to stay in the same place.

It's hard to get excited about this, when in the end, the result is usually a web page which could have been displayed faster in HTML 3.2.

Re: The self-hating web developer

#4
I wish you nothing but the best in your journey back to confidence. I have been there too and occasionally my mind gets tripped in the same thoughts again, but I realized that web dev is the only thing that I know that let me builds what I want to build. It might be easy for some but it is effective for me.

Re: The self-hating web developer

#5
Web development is real software development. The people who say or think otherwise usually just don't know any better.

That being said, there are different tiers of software development (including web development) in general. Most developers are actually abysmal at architecting good software. This might be down to a number of things - time pressure, lack of experience, lack of skill, apathy, "life happens" etc.

Anyway my point is, abysmal software is everywhere. Thankfully, customers don't mind. If your software is important, you'll write tests.

Re: The self-hating web developer

#6
Yeah, modern web development is actually really fucking hard mainly because you have to know so many different things. To build an application from scratch, and do it well, you have to have deep knowledge of, let's see...

* At least one server side language

* Probably a server side framework

* HTML

* CSS

* Maybe a preprocessor language like SASS or CoffeeScript

* SQL

* HTTP

* Probably a SCM like Git

* At least one server, which means the server software itself, like Apache or Nginx, the server for your language like phusion passenger, probably an OS that you're not familiar with

* a whole slew of build tools and the like relevant to whatever ecosystem you're in

And more shit I'm not thinking about (oh, all about images types and compression). And that's just basic stuff, not even considering setting up a database server or, heaven forbid, a cluster. Or anythging like redis, or a queuing system or redundant hardware.

That's not nearly a comprehensive list, but I think my point is made.

It's true that generally web dev is less mathy. I personally scratch that itch with graphics and game programming, but web dev is a hairy beast, so don't let anyone get you down about it.

Re: The self-hating web developer

#7
post #3

That's sad. Web development is hard for all the wrong reasons. There are so many layers of bad, half-broken stuff to deal with, encapsulated in new, half-broken stuff. Worse, it has fads. Sign: "It has been [0] days since the last new Javascript framework." Web developers must run very hard to stay in the same place. It's hard to get excited about this, when in the end, the result is usually a web page which could ha…

Your attitude is exactly the part of the problem described in the post. For me, web development with all its exaggerated quirks and fast evolution of JavaScript frameworks is very exciting.

Re: The self-hating web developer

#8
Seems a little bit rash to differentiate web development from "real programming" with such a binary lens.

There are both good and bad web developers, just as there are software engineers.

If one wants to learn more about software engineering then of course there is nothing wrong with that, however it strikes me as odd to pursue it solely for the "higher prestige" that it carries amongst the programming forums.

Re: The self-hating web developer

#9
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 they don't understand and github is telling them to put stuff in their .bashrc.

Especially when you're getting started, it just doesn't matter. Open up a text editor - it doesn't matter if it's vim or emacs or notepad, and start building something - it doesn't matter if it's PHP or Node.JS or Rails or LISP. Just do stuff. Then take on the next challenge, and grow from there. You don't start out hacking the Linux kernel.

Momentum is the thing that truly matters. Learning and creating is like a conveyor belt - if you stop the conveyor belt to move the things around and make sure that you're doing everything right, progress stops, and you're probably going to do more harm than good. Keep the conveyor belt running at all costs.

Discouraging that momentum because the language isn't "good enough" is like telling someone who is learning to ride a bike that they should jump on a motorcycle. No one would question that motorcycles are better than bicycles, but you probably don't want to start on one.

My general rule of thumb is that if you don't know why something is better yet, you should generally avoid using it. If you don't know how to write CSS, you don't need LESS or SASS or Gulp or Bower or whatever. Once you write a project in CSS, the need for SASS becomes obvious, and you appreciate it.

Of the several programmers I know, I don't know any who started out writing machine code. Most started out writing PHP (some Java), but they got the ball rolling and learned quickly.

Re: The self-hating web developer

#10
There is a simple path to the professional satisfaction for programmers who work primarily with web development. Learn a little marketing, a little entrepreneurship and make your own side projects. For fun, profit or social good. None of the arrogance or denigration won't touch you then.
Post reply on HN