Hacker News new | past | comments | ask | show | jobs | submit login
Things will not change (tobiastom.name)
85 points by tobiastom on July 10, 2015 | hide | past | web | favorite | 49 comments

> When someone actually has built something, and it could be used by someone, they only get feedback about the size of the pages, how slow it is and that they should have used some other technology after all.

I know of a certain community where this seems to happen a lot. Instead of commenting on the actual content or the idea, it's always "Their web page doesn't SCROLL the way I like!!" and "What amateurs--they should have used Angular React Ember js with Docker!!" and "I didn't read any of the article but the title is CLICK BAIT!"

People are often quick to make the easy critique of something based on irrelevant surface characteristics.

Messed up js scrolling often means I _can't_ read the actual content. I know WP8 isn't that common, but should I just quietly accept that yet another developer decided to "innovate" and wrote a super sexy scroller that crashes and burns on my browser?

Not quietly, but perhaps just not loudly to everyone around you... an email to the author is a billion times better than another worthless HN comment about color contrast.

wrt marginal design choices like colour schemes I absolutely agree, HN people spend too much time bickering about them. But people who wilfully display static content in such a way that people can't see it should be publicly shamed, pour encourager les autres. It's been a solved problem since 1993.

Yes, in that forum that may very well be what that means, if the outcome is that everyone ends up bikeshedding about whatever it is that they want to complain about and derailing the entire discussion.

The thing is that we need lots of people to innovate in website design in many different ways if we want the content and technology of the web to get better.

If someone spends months working on a site to incorporate new technology, it's really frustrating if the main feedback is that it breaks scrolling in someone's esoteric preferred web browser.

If the site works well on every device but Windows Phone, then maybe it's not the site that's the problem.

Although I see your point (Windows Phone is not that popular) couldn't you say the same for any mainstream device? i.e. If the site works well on every device but Linux/iOS/Android it's not the site that's the problem.

> People are often quick to make the easy critique of something based on irrelevant surface characteristics.

It's not even surface characteristics, it's just the ability to make a comment, to be a participant rather than an observer.

People need their own identities validated, and that is hard to do in a social world of opinions and ideas that is constantly shifting - you can look up information that validates your thoughts and chances are, you can just as easily find information that invalidates those thoughts, and this is eternal and unchanging.

The characteristics of truth seeking on the internet is chaos. There is so much under the surface stuff that goes into fueling ideas and shaping them. If a funny meme can explode in popularity over the internet, why can't an opinion that has no foundation in the facts, but instead it just 'clicks' correctly with a set of minds? It is nonsensical, but yet, it makes sense.

I don't know if it is genuinely easier to criticize something than it is to make a positive or neutral comment. I am interested in whether it is possible to have intelligent and polite discussion last for longer than what seems to be seconds at a time, in public, anonymous forums.

I do know that I have been thinking about developing an intellect that is okay with being confused for extended periods of time, just because it's something that I haven't tried to do in all my years of internet communication and various other kinds of education. I don't know what would happen to the shape of technology, of coding, of ideas, of analysis, if many people at once, gave themselves the chance to breathe, instead of having to constantly digest (or verify against their own) a selected path in a realm of chaotic, loosely connected, incomparable, inconstrastable, unsortable, etc, ideas. I just feel like this constant reaction to preference makes us feel like we are in control, when it's more that our individual control begins to control us.

The shape of reasoning for technology in the contemporary age looks more like that which is irrational and disorderly.


It's just bikeshedding bullshit. I just downvote and move on.

One time an HN headline took me to an article written on pastebin; the HN comments were not full of UI complaints.

Yeah, I while ago I built what I thought was a site with really neat content (I thought) but 50% of the comments were about scrolling behavior. WTF HN?

The quality of your content is irrelevant if your website doesn't work at all or annoys me into closing it before I've read any significant amount of it. Should I not complain about the scrolling when I literally can't read past the first two paragraphs because every time I try to scroll down it instead switches to some other article or does nothing at all? It's like having a book where the pages are all glued together and then complaining that people only talk about the glue.

Don't screw over your content with design. Look at this place, Hacker News. Text, lots of it, all of which is perfectly readable without pagination, a fancy javscript scroller, or even images.

This wasn't really explicit in the article, but a lot of it came across as frustration at the overwhelming negativity or snarkiness in forums/mailing lists/etc. If so, I think that's just the consequence of these forms of communication not scaling well as more and more and more people participate in them. It's so common to hear people complain about how their chosen Internet communities aren't like they used to be- everyone used to be so thoughtful, now it's just a bunch of precocious kids flaming each other over dumb things. I remember feeling the same way about Usenet circa 1996, or Slashdot circa 2000.

Constructive, productive communities are very tenuous things and I think there's just a natural entropy that happens as they grow where the tone of the conversation gets watered down, snarkiness and flames beget more snarkiness and flames, the more mature community members get annoyed and stop participating, and after a while it's just a bunch of people who don't know what they don't know screaming at each other about which phone/language/Linux distro/whatever they use.

It's tempting to attribute this to the profession as a whole ("my fellow developers used to be interesting, now they're all jerks!"), but I think it's more just the inevitable deterioration someone sees if they go to the same forums or stay on the same mailing lists for a few years. It might also be due to the observer getting more mature and clueful and picking up on negatives that have always been present in those communities, but previously unnoticed. Back in 1995 I really put Usenet on a pedestal, but that's partially because I was way more immature and thought many of the other posters were far more insightful than they actually were. In other words, it may seem like everyone else has become really clueless and immature but part of that could just be you, the observer, becoming more experienced and mature.

I agree with much of your comment.

At the same, it's also true that people have generally gotten nastier towards one another.

It's possible to learn from other people. And better tools do make your life better, even when "nothing was wrong" with the old tools. While you shouldn't try to upset people, negative feedback is valuable. I don't think this is the way forward.

At some point it does start to feel like the focus on tools is disproportionate. Have we begun shuffling around the gadgets in our toolbox to distract ourselves from the difficult problems we need to solve? Sometimes I think so. Have we developed an expectation that our toolset should eventually become so perfect we just stack it up and the job is done? Sometimes I think so.

Better tools improve our lives, but better tools should not be the primary focus of average developers. If too much of the labor force becomes obsessed with creating tools, there won't be enough of us left to build great things with them. If we spend too much of our time testing new tools, our innovation will end with tools.

Creating great things takes mastery. Mastery requires a foundation. If we aren't careful, we may soon become masters of rejiggering our stack with no idea what to do once it's complete. If that becomes the dominant habit of our industry, we'll be in trouble.

Good points. Better tools generally provide value. At the same time, an infinite number of tools doesn't provide infinite value. There is a tipping point in tool proliferation wherein we see, not only diminishing returns, but a deleterious effect on productivity.

The pace of change dictates that threshold to some extent. For instance, when the hottest tool for x or y barely survives the new product development life-cycle, then it's a problem. When this is combined with the sometimes hyper-opinionated, absolutist culture referenced by the author, then we're deeming products obsolete before they've even been used.

I've come to call it tech for the sake of tech. It starts to become divorced from the business and exists for its own sake. One cure for this is running your own business that relies on the code you produce. Tendencies toward infinite refactoring and constantly learning the latest tool-set to swap in will die quickly, when stacked against the need to just get it done.

People sometimes give you funny faces when you tell them that you use „old and „outdated ones (e.g. Mercurial, Less, PHP).

This is so true. I've seen people refuse to take web dev classes in PHP and wait for availability of Java/Python classes (and not doing anything in the interim). I've seen people from marketing, sales, recruitment etc (who've never written code) put down PHP. It gets a little annoying at times.

To be fair, PHP is kinda dangerous, especially in the hands of novices. Honestly, a world with fewer people-who've-never-written-code writing PHP doesn't sound like a bad start to me.

Don't get me wrong, it's possible to write great code in PHP, it's just a language that makes it easy for you to shoot yourself in the foot.

You hear the same argument for C / C++ but you don't see people putting it down as much as PHP.

That's probably because C/++ don't have good drop in alternatives. If I want to write a website, there are at least half a dozen equally mature languages to choose from. If I want to write any kind of embedded systems code, C is almost always going to be far and away the easiest way to go.

Not as much, but an awful lot, and in similar ways.

There's a difference in that PHP originated as a low-quality templating language, and that C/C++ are historical monuments of computing that most of the infrastructure of the world and most of the interpreted languages of the world run on.

There's not much of a difference in people calling both old, only used by dinosaurs, essentially unsafe, and the root cause of all bugs being choosing to use them in the first place.

The dangerous features of C/C++ gives you something useful in return -- low level control of memory. The dangerous features of PHP don't provide any benefits. It's dangerous because of poor design.

The beginner's C / C++ programs don't usually get put on the Internet (or even on a local network).

There is no such thing as a bad program. If it works, it's fine. Really...

It's bad if it's susceptible to running an attacker's arbitrary code.

The difference is that PHP is far more accessible to the average beginner than C/C++.

Sure I do, just not in the web dev community because they're generally seeing more PHP to warn about than C / C++ to warn about.

The idea of Mercurial being considered old and outdated is particularly baffling.

Maybe he forgot to include "popular" or "hip" in his list of adjectives. I guess it's also possible that it's status comes across as "outdated" because, as a tool, it seems to have a stronger preference amount heavy svn users (the people that think git's ability to rewrite commits is 'scary')?

Version control has strong network effects. If you use a particular VCS, it's in your best interests for every other project to use that VCS too. And if most projects are using a particular VCS, it's likely in your best interests to use that VCS too, whether you think it's technically the best or not.

That said, I'd never call mercurial outdated. If I saw it on a resume or someone mentioned it when asked what version control systems they'd used, I'd consider it a major positive, much more so than if I only see CVS, which in turn is better than seeing no version control at all or having someone give a blank look when asked what version control systems they've used.

And if someone says they've used both mercurial and git, that's the perfect opportunity to ask them to compare the two and mention what they like and don't like about each. If you've only ever used one, you don't necessarily have the basis on which to make a good comparison.

I've used both mercurial and git (as well as RCS, CVS, SVN, tla/baz, and bzr), and I can spell out exactly why I prefer git over each of them.

> I've seen [lay] people [...] put down PHP

Would you learn to drive on a Lada?

Conversely, should you learn to drive in a lamborghini?

Tools matter as a result of what you want out of them. In this case learning to drive. They honestly don't have that much value themselves. A guy who learns to drive on a Lada can drive a Mercedes too.

The same is true for programming languages, even though we love to pretend it isn't

> A guy who learns to drive on a Lada can drive a Mercedes too.

Let's continue this analogy until we swerve off the road.

Someone who learns to drive automatic is going to have a much harder time when they switch to driving a stick-shift, vs. vice versa.

Someone who learns to drive above the Arctic circle in the summer may run into trouble because they never learned how headlights, fog lights and brights work.

The author says:

"I accept that I cannot change anything with complaints."

I respectfully disagree as both a complainer and the implementer of things that people frequently complain about. Not everyone can fix what's wrong with their software (even when it's open source). Not everyone knows how or where to give feedback. Sometimes all you can do is complain publicly, hope others see it and help make the right people aware.

While I hate it when I write code that is broken or that people don't enjoy using, I need to know about it. I sometimes go to forums where our users help each other with our software. When I see complaints, I give the person a link where they can explain their problem or desire in detail. It's extremely helpful to us and to them.

Even if you don't reach the intended people with your complaint, saying it out loud can be incredibly liberating. It allows you to walk away from it. Just knowing that others are frustrated by the same issue makes you feel less alone.

I understand what it's like to be around people who are always negative. And I understand the posturing and snakiness in our field. I agree it needs work. (Was that a complaint?) But it does serve a very important set of purposes.

I searched for all the sentences with the word talk:

> Nobody talks to each other so everyone is reinventing the wheel.

> Still, nobody talks about sharing concepts that would definitely improve all of them.

> I will continue to talk to each and everyone about old, new and maybe broken technologies.

> Stop talking about tools, stop being a smart ass about why something should have been done differently.

I really dislike the opening of the last quote, and I think the author would probably rephrase it if he looked at it in this context. I don't want people to stop talking about tools more method, we just shouldn't be jerks about it and we should ask more questions than we prescribe medicine.

As to the other points, I'm not entirely convinced I agree things have gotten worse. I actually see more collaboration than I saw 10 years ago. I think he's confusing the shear volume of open source projects with people not collaborating and communicating. I think it's basically a lot easier for lone coders to publish and share their solutions, so it appears the entire collaborative landscape has changed.

I think that the entire "AppStore is broken" section is pretty well put into perspective by the Puppygames blog ( http://www.puppygames.net/blog/?p=1677 ). It's not that the platform owners are doing anything right...it's that they've built walled gardens and effectively tricked devs into going there.

In some ways I agree, in some ways I disagree.

While a lot of recommendations are indeed largely hype (SPAs, MongoDB, ...) and often not useful solutions, there really are some technologies that really are just poor and/or broken from a technical point of view, and need to be replaced. PHP and MongoDB (again!) come to mind.

As far as I'm concerned, discussion about new tools isn't the problem - hype is. If newer tools legitimately make things easier, without any unreasonable drawbacks, then it's perfectly okay to recommend them - but beware of false simplicity.

> The majority of the developers are just too arrogant to look beyond their one nose.

That is an awesome choice of words, really. Just reading it makes me hopeful for the future.

There's an 18th century proverb about this:

"A little knowledge is a dangerous thing."

So this is hardly anything new. It's been the status quo for as long as people have been learning. That's partly why people like learning: because it makes them feel powerful and privileged.

LESS is outdated now? Surely not everyone uses Sass, right?

to me this sounds like complaining about evolution (in the biological terms). things are evolving, some experiments are failing, better ways of doing things are emerging. is it stressful? sure. can one at sometimes feel overwhelmed? absolutely.

it's always a balance between getting things done and evolving the way you craft your things.

all things that are successful are build on other things. it's extremely rare to start from scratch.

Better ways are not emerging though, or they haven't yet.

You might want to turn off your debugging.

Thanks. How did you find out? :)

There was a brief moment (it didn't survive a page refresh), where I could see an exception dump.

beautifully written. It hit every irk that have been brewing inside of me for the past 4+ years or so.

Unfortunately, it's tough to find a job if you tell your employers what you really think about their choice of tech stack sucks or they have no idea what they are doing.

Applications are open for YC Summer 2019

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