Hacker News new | past | comments | ask | show | jobs | submit login
Most tech content is bullshit (aleksandra.codes)
709 points by velmu on June 7, 2020 | hide | past | favorite | 461 comments



Good is hard.

When I left O'Reilly Media in 2005 we were just ending a period where many programmers worked with a set of physical O'Reilly books on their shelf. And everyone at O'Reilly could see that their business was being eaten away by free. Stack Overflow didn't exist yet but we could feel it coming.

At the time, we hoped that UGC would have some sort of wisdom of the crowd thing that would lead to high quality. I remember this sort of was true in the PHP documentation. The official documentation was always deeply flawed, but the comment thread attached to that documentation generally had the right info.

But that was a precursor to our current situation. To get correct info you had to read a lot of conflicting info and synthesis it yourself.

So I think we are seeing as good as the free ecosystem can get and what's sad is that we seem to have lost the paid ecosystem. It's not nearly as strong as it used to be.

What people probably don't know about O'Reilly back in the day is what went into a book.

The author was almost always a subject matter expert already. And their editor was also a subject matter expert. Then the book would go through tech review and those people were generally also pedantic luminaries. Then the book would be published and bugs would come into an errata tracking system. The vast majority of those bugs would get fixed between printings.

And then, on top of all that, there was a tech support number. And if the code in the book wasn't working for you, then you could get a live person to try to work through it with you.

That all costs a lot of money, but when you split the cost out across consumers it was only $30 or so per book.

I value my time. And there are many, many places where I wish I could pay for quality. Tech content is one of them.


Seems kind of like the video game crash of 1983[0]. A flood of low quality content that begins to drown out the high quality content. One of the best things about the internet is that anyone can create and publish what they want. One of the worst parts about the internet is that anyone can create and publish what they want.

I'm a big fan of books because that is where a lot of experts seem to prefer to publish their knowledge, and it's usually worth the price. Of course that's not always the case, but I feel like I get much higher quality content from books than Medium articles.

[0]https://en.wikipedia.org/wiki/Video_game_crash_of_1983


I’m the same way. I prefer books because an expert had the opportunity to help you understand a subject from start to finish.

Stack Overflow is great for quick reference to small questions.


Or edge cases that the book might not cover.


Another reason to vouch for books is, it takes painstaking amount of research, collection, compiling, citations and proof reading before you would read it. Not like someone spotting in the blog comment about a (logical) flaw. Not all tech content is BS though. Choosing whom to follow makes a huge difference, I follow Raymond Hettinger for Python, Blog posts make as a quick reference but fails as foundation building block.


What are some high quality books you’d recommend that are somewhat recent (last ten years)?

The only ones I can say, that I’ve also read, are YDKJS and Secrets JavaScript Ninja (work in web, but willing to read anything, good information is good information regardless of the tech).


Here are some books that have stood out for me. They cover some of the technologies that I either have to work with, or am personally interested in.

Effective Java by Joshua Bloch

Practical, actionable guidelines. The first edition was the best, the second was diluted somewhat by having to cover generics, in the third he admits that he doesn't really use Java much anymore... Despite that, it's well-written and still a good book.

The Linux Programming Interface by Michael Kerrisk

Covers some of the history of the Linux/Unix API, describes it in detail, has plenty of examples, compares different APIs that do similar things so you can make an informed choice (e.g. System V vs. POSIX message queues).

If any book in this list stands out for me, it's probably this one. It might be partly due to the surprise factor of how enjoyable and well-written a 1000+ page, near-reference book is.

Programming in Haskell by Graham Hutton

An intro to the language and how to approach problem solving from a functional P.O.V. Not as comprehensive as some other intros to Haskell, but Hutton is a good writer and educator, making it a good read.

Designing Data-Intensive Applications by Martin Kleppmann

Provides an overview of a number of topics related to databases, distributed systems, consensus, etc. Lots of references (many of them online) if you like that in a book. Enjoyable to read.

Parallel and Concurrent Programming in Haskell by Simon Marlow

Probably a must-read if you're into Haskell; probably too esoteric if you're not... Well written.

Type-Driven Development with Idris by Edwin Brady

Describes a programming language similar to Haskell, but strict by default and with dependent types designed-in from the start. Also describes techniques for leveraging the type system to construct functions (the type-driven part of the title). Well written.

Hacker's Delight by Henry S. Warren

Low-level bit twiddling. 'Nuff said.


in the third he admits that he doesn't really use Java much anymore...

What does he uses now?


I misremembered what he said in the preface. I thought he had said that he was using Java less often, but what he actually wrote was, "I still like Java, though my ardor has cooled a bit as the platform has grown."


High Performance Browser Networking - it's 2013 but apart from new tech and higher speeds, the basics of networking remain the same (also available online since a recently at https://hpbn.co/)


This looks cool. I use to work at a national ISP and really miss the world of network engineering, granted browsers are one aspect of it but it's a very unique industry compared to e-comm and marketing tech.

Thanks for the rec!


Pro Git, Coders at Work both are ~10 years old. A recent one is Site Reliability Engineering published in 2016


Whoah, it's already ~4 years since the SRE book... How time flies.

I wrote two of the chapters in the SRE book but I have very mixed feelings about them. I'm glad that I got a chance to talk openly about some of the work I've been doing for the last decade, but I felt that, in the end, I couldn't devote to my chapters as much time as I would have liked, so I don't feel as proud about them as I would have liked. Boy, this really took soooo much time!

I don't know what I'm trying to say, I guess just that I find seeing someone praise the book interesting. What were your favorite chapters?


Embracing Risk changed how I think about downtime, the other chapters didn't really offer anything new for me, I already used those principles in practice, so I can't really pick a favorite from those.

Despite that, I still recommend it to anybody new to DevOps/SRE/Cloud Engineering/whatever you call it, with a grain of salt that you don't operate at Google scale so you shouldn't implement it as is. Just reading the principles chapters helps a lot to talk the same language.


Pro Git is something I've been meaning to read, as someone who my team considers a "git expert" (I'm the only one who knows how to rebase and handle conflicts thru mergetool on the CLI -_-).

I've heard great things about it, definitely need to add it to my queue.

The SRE book is also interesting. There was a conference recently where one of the authors gave a talk [1] about training. Really encouraged me to at least get the PDF.

[1] https://www.youtube.com/watch?v=8iaNMMwozCc


You will learn a lot from the Pro Git book. The good thing about this book is that it builds up your knowledge from the ground up without being boring. You will learn what's happening in the background. In the end, I got more confident using git because I realized if it's committed I can revert back to it.


Yeah I went back to good old expert written books after years realizing that a lot of content on the internet, that is not paid for, is opinion and drivel and cannot be trusted.


I think part of the problem is that publishers did a bad job of pricing their digital products and missed an opportunity to increase sales volume. In my opinion they got greedy thinking they could increase volume and prices at the same time, so digital products were priced way too high.

I had a Safari Books subscription for a little while, but I got rid of it. I can't remember the exact pricing, but IIRC it was around $250 / year for the cheap option that let me "borrow" 10 books a month. The problem for me was that I'd typically buy 2-3 books per year ($100-$150) and I owned more than 10 books total, so the subscription seemed like a bad deal by comparison. The "unlimited" (with limited downloads IIRC) was $500+ / year. That's a lot of books.

O'Reilly could have been the Spotify of tech books, but old school publishers were too scared to reassess their pricing. When the cost of distribution plummets, but results in a worse (ie: more expensive), product for your customers, it's not a shock to see those businesses struggle IMO, especially when the competition is free and "good enough".


I think it’s around 20/month now for O’Reilly learning (the new name for safari books). I’ve had it for around 5 years now, and I don’t ever recall having a limit on number of items. I feel like they have actually got better, with some really good video courses included as well. I’m just completing the second of two courses which are available elsewhere for $99 each, so I’ve almost paid for the year. I really like the idea of having this huge library I can dip into when I want to look something up, rather than getting lost in large amounts of low-quality blog posts online.


Just looked it up and the website is showing me $49/month or $499/year.

https://www.oreilly.com/online-learning/pricing.html


The only option I'm seeing now is $499/yr or $49/m. Do you have a better price somewhere?


The Spotify of books is a great way to look at it.

If a publisher had insanely high quality articles on everything, behind a paywall, I'd subscribe to $15 a month pretty quickly.

Every hour saved would pay for itself many times over.

The problem is having a wide enough array of content that such a site becomes the single go to. O'Reilly had that catalog, but I think the tech world had gotten much more complicated since then.


That would be Kindle Unlimited model, as far as I know they pay authors by pages read.

But I’m unsure how impactful revenue wise for an author can make or how sustainable is it long term.

Most of the books I see on Unlimited are either older books (there are some good gems), books that are already freely found on the internet or books that are scrappily put together.


“...by pages read.” That actually sounds great. I don’t want to read a book, I want access to knowledge. I want a great search engine that will surface the pages containing the info I need so I can read them and move on and that is usually a handful of pages from a book.


This could have a terrible incentive for authors to spread the information thin across a ton of pages to artificially increase their earnings, so we'll end up with books that are the equivalent of online recipes today where there are 3 pages of SEO garbage before the actual recipe.


That both has and hasn't happened with Spotify.

On the one hand, there are no 10 hour songs with some great part spread out randomly throughout that listeners have to find (obvious, and I think such a book wouldn't be successful either).

On the other hand there are tons of generated crap on Spotify, than sometimes sneaks into your playlists (even things contained text-to-speech advertisement).

I think all such platforms would need some kind of spam filter functionality and a good rating / statistics system so that quality content could be surfaced.


Spotify’s returns to creators are pitifully small, and since they’re basically a distributor not a publisher, they don’t offer advances on royalties.

So maybe the economics would disincentivize authorship.


I was thinking of everything being under one publishing house, basically a company that just writes high quality documentation and nothing else.

The "like spotify" was more in reference to pay once, get everything imaginable.


Sure, but the functional aspect immediately unpacks into commercial consequences.

This also explains the difference between publishers and distributors, and the dissimilar risks they accept.

I'd suggest something more like Netflix as a model; they are primarily a distributor and only very rarely a publisher; their library has a selection of standard classics, recently(ish) popular content for which the original publisher has more incentive to license than sell direct, plus rotating items of interest to keep the catalog feeling fresh for ongoing customers.

(note that even so-called "Netflix Original" content is mostly produced by other companies).

It's been thought of, of course. The search history of "Netflix for e-books" is in practice a mixture of junkyards like Scribd and "what-if" questions on Quora. There's likely a causality dilemma with achieving the catalog scale necessary for success, mediated by the conservative strategies and revenue fears of existing publishers, all of whose investors/owners are entrenched incumbents that see their businesses as perpetuities (steady, low-margin cash printers) rather than growth ventures.

Basically, they won't do it, until they see it can be done.


Also for selling digital goods regional pricing plays a big role in my opinion. Part of the reason why steam is so hugely successful.


Orielly learning comes free with ACM membership which is very affordable in developing countries. It really helped me.


The problem with physical programming books - and don't get me wrong, I love physical books to a fault - is that they're easily made outdated, either with new versions of the same software, or the software gets replaced, or new best practices arise. Then you have to buy another version of the book. In addition to this, which basically makes physical programming books a nonstarter already, you have the issue that books aren't easily searchable or copy-pasteable.

Really, there's not much of a reason to have physical programming books anymore; it's just not practical, whatever the level of quality you get elsewhere. And you seem to have left out official documentation and stuff, which is getting really good imo.

The only reason for having a physical programming book is for totally timeless ideas, like algorithms and data structures textbooks, or introductory books to concepts like compilers.


There are a lot of “totally timeless” ideas, so lots of reasons to have paper books. There’s also nothing wrong with a book becoming outdated. A book is the most efficient way to transfer a large amount of information between two human minds. Just because some syntax changes doesn’t remove the value of that information being transferred in the first place. And just because a “best practice” changes, that doesn’t mean that understanding the old best practice has no value. In fact, everyone would benefit from understanding the history, context, and evolution of “best practices” (which change so often that they should really be called “current practices”).

So, if you’re only looking at a book along one dimension which is “getting the most recent fashion status” in a fast-changing industry, then paper books aren’t appealing. But that’s the saddest dimension to evaluate a book on.


yea, in short, the internet enabled speeding up all of the extremely time consuming processes described by GP. You could have kept the steps the same on the O'Reilly books, but used the web for bug reports, pushing updates, etc. So what it comes down to is curated and paid content vs crowd sourced and free (ad supported).

For me it comes down to scale. The chances I find precisely what I'm looking for on stack overflow is much higher than even the best curated content of all kind, just because SO is much bigger.


I make a living selling iOS development courses at high prices, so I can tell you that the we didn't lose the paid ecosystem.

I can't talk about book publishers like O'Really, and probably the market for books shrank. But I have several competitors that sell self published ebooks.

The plethora of free content you find online is not always a good thing for everyone. As the author of the article says, most tech content is bullshit. Most people don't care, but there are plenty of people that realize that and are willing to pay.


Paid tutorials, especially in video format, usually serve different clientele. There's often 'show me how it's done' instead of 'let me figure this out after reading it' mentality.


If 'show me how it's done' is video then books are 'tell me how it's done'. The 'let me figure this out after reading it' would mostly be some docs.


Do you have a link? I'd like to check them out.


My site is matteomanferdini.com


Books are awesome and somewhat under-appreciated piece of knowledge today. Many people prefer to lurk around blogs, documentation, tutorials for some technology, but I always trying to find a book from some reputable author. It does not always exist, but often it does exists and it's much better way to learn a technology. It might take a bit more time, because usually books present information in a more thorough way so you need to work from basics rather than copy-pasting some code and call it a day. But in the end it's worth time spent.


I find very few books to be thorough. If you find books that contradicts itself, then the author doesn't know what he is talking about. A good reference point for a good book IMO


a period where many programmers worked with a set of physical O'Reilly books on their shelf.

I’ve never been so productive as I was in those days. Good quality documentation and no distractions. A golden age that we didn’t even know we were in. The modern development paradigm is a dumpster fire in comparison. Thanks for the good work you did back then producing those materials.


In a perhaps futile attempt to solve the problem (contribute to solving it) I came to think of it like this: Web pages have the same kind of content as the first bunch of pages of a book. The entire internet is like that. You reach the largest audience by assuming the reader knows nothing. Eating nothing but appetizers turns out unsatisfying. It gets truly absurd where everyone seems to [further] optimize for delivering as little as possible.


Part of the reason for the higher productivity probably was the lower amount of churn in the development tools, frameworks, paradigms-du-jour, deployment strategies, microservices, picoservices and more. It doesn't make sense to produce and print books about technologies with a half-life time of a year nor does it seem to make sense to invest time and effort into learning them - but you'll have to anyway.


> and those people were generally also pedantic luminaries

Having been involved in publishing tech books, that is a beautiful way of describing tech reviewers.

I too miss the paid ecosystem. And not just in tech books. Music too. Paying someone for curation had definite value to me.


Yes. I meant it lovingly. The feedback I got on my own OReilly book was intense!


A lot of that free content is not just wrong but also convoluted to extremes. I was reading about roles in Asp.net. After watching a few videos, reading a few articles, including the ones from Microsoft,I was none the wiser. Then I pulled out a book I bought a few years ago and it turns out it had a section on about roles.The guy explained the whole thing in just few pages and in a way that even a donkey would understand,while all those websites were showing some unnecessary complexity. I bought some technical books, including some classics and it's so refreshing compared to all that junk on Medium.


Perhaps part of the problem is that books are hard to search?

It may well be a bad habit, but I frequently don't learn new technologies through a concerted effort. Instead, there's just something I want to do, and I google it, and after doing that a bunch I eventually learn a lot.


I feel like that method of discovery is how I learn best, because I learn WHY something is the way it is, and how it's actually used outside of toy examples. Plus, it's just how most people are built to learn.

And yes, books not being searchable is basically THE reason I never use programming books.


Hmm, perhaps, but I find that book indices can be better than a raw search of some term (easier to find more substantial entries).


I've never found that to be true, but I'm just kind of bad at using books as references maybe. I always get extremely frustrated flipping through.


I'd certainly pay for timely quality (I had at one time 4 packed bookshelves lining the walls of my office).

The problem is that "timely" bit.

A good book take 3-6 months to write, edit, review, and publish.

In that time we could have as many releases with the info in the book radically out of date.

Only solution is to go online, but that doesn't help the traditional write/edit/review cycle much.

Things change so fast, I don't see much option to Stack Overflow... Not really.


I really appreciate good books, I recently bought Javascript The Definitive Guide, for a second time 2020 edition (O’Reilly) it’s expensive £40 but worth every penny, 10 times more valuable than umpteen books at £10 to £20, so actually great value.


Good was hard.

Nowadays anyone can publish a book on Amazon, digitally and get published. It's reflected a lot in their Kindle bookstore.

Sometimes, having a good barrier to entry, brings out the best and the most dedicated.


There's a particular brand of young developer where every opinion comes from a blog post, talk or HN comment. They have strong views on many different topics and believe that they're knowledgeable and smarter than the average developer^[1].

The only issue? They don't have actual experience to back this up. Because not only is most tech content bullshit, the small percentage that isn't BS may not apply to their situation. You may not be working on soft real time systems. You may not be working with big data. You may not be running a company.

I should know—I'm certainly guilty of assuming that because I read about software development, I'm a better software developer. When really there's a big big big difference between reading about development and actually practicing the craft. Especially if you've only been programming casually. There's a massive difference between writing code for fun and writing code that needs to be a value-add for the company.

[1]: https://en.wikipedia.org/wiki/Yogi_Bear


Being young is hard, no need to judge to harshly, often a rivalrous blogpost-driven discussion can be turned into a cooperative exploration, which is exactly a way for them to gain the experience.

Quiet, or at-arms-length, dismissal hurts self-confidence and reinforces this blogpost-driven defense mechanism.


It's definitely not the worst to be overly well read in programming literature. But oh man does it get old arguing with someone who is taking advice from a very niche, very particular field such as game development and applying it to general software development.


>often a rivalrous blogpost-driven discussion can be turned into a cooperative exploration

They also often drive away any possibility of meaty conversation because everyone worth hearing from is drowning under a sea of underinformed responses written in a way that sounds like a convincing in-depth discussion to the even less informed passerbys.

I'm no sage, but it doesn't take a genius to see when Hacker News and /r/programming get swept away by a new silver bullet in software development. Then we all have to wait years before the enthusiastic youngsters are ready to hear a realistic conversation about the prima facie limitations of the new magic beans.


I think I possibly fall into this category of developer. I'm currently a few years into game development in the AAA space. The people I listen to most in descending order are Casey Muratori, Andrew Kelley, and Jonathan Blow.

I try to take their opinions with a grain of salt and find my own balance of considerations/tradeoffs. A common sentiment between them that I agree with is that software is a lot of commercial software is often an order of magnitude too slow in important places and that object oriented programming is almost always taken far too far.

I also look up to a few senior programmers I work with who have in-the-same-ballpark values as them.

On a whole, I think reading and listening to them has made me a better developer than if I just fumbled around to draw my own opinions completely from scratch.

I think being that type of young dev is probably fine so long as you keep your dogmatism and humility in check, and ensure your mentors are a spread of different individuals.

I think that's better than other young devs not seeking out information to try and grow.


Yeah you're quite similar to people I know, especially in your view of performance and choice of sources. I definitely agree that bottom line, seeking out info is a net benefit.

I have a fair amount of respect for game developers. However at the same time I feel they can make the assumption that all development should follow their practices. That everybody should be writing in C++/Zig/Jai/Rust, using data oriented programming and avoiding objects like the plague. That if other developers were just smart enough they'd make everything ridiculously fast and awesome. Not every game developer thinks this way, obviously, but there is a subset.

The problem with this line of thinking is that it assumes all developers have the same priorities. In actuality game development is an extremely rare area where there are close-to real time requirements. Not painting the screen every 1/24th of a second is a disaster in game dev. Meanwhile GitHub uses Rails in all of its object oriented, garbage collected, interpreted horror. And nobody cares!

I suspect if a troop of elite game developers were dropped into your average web development job, they'd spend an unreasonable amount of time optimizing perf, only to have their lunch eaten by someone who focused on user facing issues. Not that web development is hard or anything. It's just a different set of requirements.

Watching jblow et al is definitely great! But there might be a point where you're put on a team using OOP and asking them to refactor to DOP with bulk allocation because you gotta get that cache utilization will just earn you stares and no buy-in. Or you might be running a startup and realize that all the time you spent getting all requests under 100ms could have been spent writing features.


Popularity of blog posts are driven largely by SEO which is good for marketing but not so much for consuming knowledge.

I believe a lot of people (myself included) don't realize they read a lot of blog posts and articles about a topic they are interested in, but have no time trying out, and feel they know something about the subject when most of these articles are copying each other to gain popularity.


Not to mention, the extremely opinionated but well written and charismatic blog post is most often the one believed, even though charisma is not a strong signal for truth.


This really just sums up human nature.


It's no really about experience but rather about the ability to reason from first principles. Lots of developers with experience don't even attempt doing something because the structure of the problem demands it; they would only do something if they've seen a similar approach before.


I'm in this comment and I don't like it.


Call me a cynic, but the whole "think critically and figure it out for yourself" solution is inefficient at best, harmful at worst. Global warming skepticism is exactly the kind of thing that often occurs when people trust their own judgement more than that of subject matter experts.

There are very effective ways to get high quality recommendations, with minimal effort on your part. Want to get good medical advice? Find two highly regarded medical specialists and ask them independently for a diagnosis and treatment plan. Not two doctors next door. Not two doctors who published random blogs. Two doctors who are highly regarded by their peers and by the wider industry.

Want to get good financial advice? Do the same thing with financial advisors. Looking for good fitness advice? Do the same with fitness trainers or nutritionists. Looking for good software engineering advice? Do the same thing with developers.

Eventually the day will come when you have learnt and grown so much, that you are just as capable as the "highly regarded" experts. When that day comes, feel free to debate the merits of their arguments. But until then, don't try to be an expert at everything. Don't feel pressured to derive every single thing from first principles. That's just not scalable.


There are too many bullshitters in the software industry. Years of experience helps but it's not sufficient to be a good developer. There are many terrible developers with 20+ years of experience and there are some great developers with only 10 years of experience.

The number one characteristic that makes a developer great is their critical thinking ability. These developers don't blindly adopt tools and business processes based on popularity. They are always able to justify their decisions with strong arguments which convincingly explain why their chosen option is better than all the other possible options. This applies to every decision they make.

Writing software is more like chess than checkers - You need to consider every reasonable option many steps ahead.

IMO software development is a complex area - Following common industry patterns and best practices without thinking about whether or not they actually apply to your particular use case is almost always the wrong approach. There are nuances in essentially every single software project which would warrant deviating from industry norms in at least some ways.

To always follow best practices blindly without questioning them or adapting them to your use case is in itself a terrible practice.

Also, the problem with trusting experts in complex domains is that the line between an expert and snake oil salesman is incredibly blurry. Sometimes even moderately skilled insiders with domain expertise don't know how to tell apart an expert from a conman.

The software industry has grown extremely fast and now the situation is that there are a huge number of highly vocal novices who pose as experts and who are silencing the real experts.


Median competency in most professions will typically be quite low. In software this is exacerbated by the high pay, which attracts a lot of charlatans, and the fact that our industry has almost no professional standards (unlike say structural engineering). I’ve never thought it was much of a problem though, because it just makes it easier for the sufficiently competent to distinguish themselves.


>> because it just makes it easier for the sufficiently competent to distinguish themselves

Having worked in the blockchain space... I have seen seen the future and it looks nothing like you think. When a company has too many conmen. The most rewarded skill becomes conmanship.


I have also worked in the blockchain space, and none of the blockchain companies I previously worked with still exist. I am most certainly not worried about fraudulent blockchain companies becoming a major part of the economy.


>> I am most certainly not worried about fraudulent blockchain companies becoming a major part of the economy.

I struggle to think of a single blockchain project which is not at least partly a scam. You can start at the top with Bitcoin.

Bitcoin handles 3 to 4 transactions per second max (this is tiny), consumes the electricity of Ireland but it's the most valuable blockchain. I get it, PoW is more decentralized. But is it worth the entire electricity of Ireland? No. Even Ethereum aren't deluding themselves about this; that's why they're moving to PoS. But even Ethereum is kind of scammy... How many times did they say that sharding would be ready soon? Seems like years ago now.

Lightning network is brittle and not practical. In real life, most financial transfers are unidirectional so you constantly have to re-open new channels after they become depleted. Also it locks up most of your funds. Also Lightning requires high availability - Without it, scammers can roll-back channels to an earlier state. Lightning is so complex that if something does go wrong, it will be extremely challenging to understand what went wrong.

And no, Bitcoin is not more valuable because it costs more money to run. If a car consumes more fuel than all other cars, that car is clearly less valuable than the others. If I can complete the same work twice as fast and same quality as someone else, then I should get paid twice as much. Economic value is rooted in efficiency, not in inefficiency. Technology which does basically the same thing but which does it more cheaply should be more valuable. Why are the top 2 projects both PoW?

I could go on about pretty much any cryptocurrency project from the top 100. Just because some project has been legitimized and is valuable, it doesn't mean that it's not a scam.


> Call me a cynic, but the whole "think critically and figure it out for yourself" solution is inefficient at best, harmful at worst. Global warming skepticism is exactly the kind of thing that often occurs when people trust their own judgement more than that of subject matter experts.

I don't think that's true. Lots of global warming sceptics point to some subset of experts who are themselves sceptics. Even subject matter experts have biases. If we ignored those, we'd probably still be unlikely to find many global warming sceptics who had done their own in-depth research. It seems to me that most people in this category (whether it's global warming scepticism, anti-vax, 5G death rays or something else) merely seek to confirm already held beliefs and end up rejecting the opinions of actual experts in favour of misinformation from the kinds of people the blog post is talking about.

Beyond that there are also people with deeper issues than just a disregard for subject matter experts. If you look to extremes (e.g. flat Earth believers), some won't change their mind even when they do the experiments themselves and find proof to the contrary.


> Lots of global warming sceptics point to some subset of experts who are themselves sceptics

Yes, this is exactly why you should:

1. Consult more than one expert, until you've found a clear majority. And then trust in that majority

2. Pick either a couple experts who are the most highly regarded in their field. Or use random sampling to pick a couple experts from among a pool of equally qualified experts

As you yourself pointed out, people who fall for fallacies often form their own judgement first, and then cherry-pick experts to lend more support to their argument. This is precisely the danger in telling lay people to trust in their own judgement.

Cherry-picking of experts is the opposite of expert-guided decision making, because the cherry-picking part is being driven by lay judgement, not expert recommendation. A truly expert-driven approach would rely either on the most highly regarded experts, or random sampling from a pool of equally qualified experts. This leaves minimal room for cherry-picking and confirmation bias.


You're a cynic ;)

Knowledge from experts should feed into "think critically and figure it out", rather than replacing either with the other.

Software has an added bonus of the "works or doesn't" test, so it's easier to (in)validate the results of that thinking than, say, something on the scale of a planet and decades.


>> Software has an added bonus of the "works or doesn't" test,

This is true, but I think the new problem that our industry is facing now is "How much effort and how many resources are required to make this software work" - This leaves a lot of room for manipulation and people do exploit it in most companies (especially large corporations). These are many tech companies these days where it takes 20 developers to produce results which could in fact have been done by just 1 developer in the same amount of time. I'm not exaggerating the numbers here.

I think the problem lies in perverse corporate incentives (or rather, the absence of meaningful incentives) and the way in which it affects how people pick their battles. Most employees pick all the wrong battles for all the wrong reasons.

The more money a company has and the more solid their monopoly is, the more employees will be focused on internal politics rather than value production.


> the new problem that our industry is facing now is

Goddamn but that's a good observation. Upvotes to you!


> with minimal effort on your part. Want to get good medical advice? Find two highly regarded medical specialists and ask them independently for a diagnosis and treatment plan. Not two doctors next door. Not two doctors who published random blogs. Two doctors who are highly regarded by their peers and by the wider industry.

This is a tangent, but I'm currently in the situation where I really need to find these two doctors, after years of suffering from a rare (combination of) medical issues. I've been searching for a doctor who has experience with treating my (or similar) conditions, for decades now, and I just can't seem to find it. Meanwhile, my problems become more and more disturbing, with me being unable to work anymore in the near future.

So please, if you know how to find the "highly regarder medical specialists", please tell me. Especially if it would take "minimal effort", because I'm steadily losing strength and soon the minimal effort will be the most I can exert.


Clearly it was an general example with limited life application. The expert doctor problem is a good example of this. So is the expert financial advisor, etc.

In your case I would ask doctors for doctors recommendations, and test alternatives - through recommendation only - outside of the common doctor. The former since doctors know other doctors, the latter due to most alternatives being non invasive, and with no side effects except the perpetual disappointment you've experienced so far.


Many of us were told growing up that we were a special snowflake. Not sure there's correlation (not sure how you'd prove it), but I have my suspicions. IMO we're in the age of individualism. Hopefully it's just a cycle.

The real kicker is it seems to be self-fulfilling. If experts are no longer trusted or respected, the market / margin for expertise shrinks. You get lots of self-proclaimed experts to fill in the gaps with less investment (lower margin == lower investment, clickbait), and then the individual is justified in thinking most expertise is crap... because it is now crap (advertiser supported business model).

Maybe we wake up some day and say "Holy shit, it's all just bullshit!" and then expertise can again attract an audience that's willing to pay for it.


You can always rely on the Lindy effect in times like these. Except for technical books, I try not to read any book that have been published in the last 20 years.

Old books that are still read will continue to be relevant while the current NYT best seller is more likely to fall into obscurity.


How would the non-experts differentiate between true expertise and self-proclaimed one?


Lack of consensus I suppose, but that can also be a false positive.


All of that sounds good in theory until we reach this point:

> Looking for good software engineering advice? Do the same thing with developers.

Which brings us back to the OP:

> Most tech content is bullshit

So we've now come full circle. Hence I would point you to another post that came out recently that would be useful to understand what you wrote: https://nibblestew.blogspot.com/2020/04/your-statement-is-10...


Absolutely. It’s question everything. Not question everything and replace the explanations you don’t like with personal, gut-feel views.


Humans have only been writing software for less than a century, mostly the last 50 years. That's nothing like other professions like blacksmithing or writing. It will take centuries until people learn how to write software well.


Humans have only been writing software for less than a century, mostly the last 50 years

50 years ago was the beginning of Unix sure but programmable computers were already 25 years old by then, and the concepts were even older.


I'm working on a reply to another HNer on just this point.


> Global warming skepticism is exactly the kind of thing that often occurs when people trust their own judgement more than that of subject matter experts.

Except that the "subject matter experts" have a horrible track record. Also, global warming proponents misrepresent the skepticism. Nobody is really questioning the warming of the earth. People are questioning how much man is responsible for it. After all, the "globe" has been warming for thousands of years before industrialization. There are "subject matter experts" who believe the warming is mostly a natural phenomenon. There are even fringe "subject matter experts" who believe the earth will cool. You aren't a cynic, you are just agenda driven.

> Want to get good medical advice? Find two highly regarded medical specialists and ask them independently for a diagnosis and treatment plan.

Where and which ones? The one's that say you don't need to wear masks or the one's that say you need to wear masks?

I won't bother with the rest. All you are saying is believe and trust authority. But the problem with that was a time when "experts" believed in global cooling, medical experts believed in blood letting, political experts believe in racism, financial experts believe in subprime loan derivatives, etc. Blindly believing authority also tends to cause a lot of problem. The problem with the "experts" in your list is that it has become so politicized and corporaticized that one has to be skeptical by default.


Sturgeon's Law: Ninety percent of everything is crap. Tech content is no exception. As the article points out, the corollary is that you have to think for yourself, assessing every piece of content you come across.


Since we're arguing by aphorism, Brandolini's law a/k/a bullshit asymmetry principle: "The amount of energy needed to refute bullshit is an order of magnitude bigger than to produce it."

https://en.wikipedia.org/wiki/Brandolini%27s_law

https://news.ycombinator.com/item?id=23417790

The value of a healthy established pedagogy, curriculum, and canon is that these distribute the bullshit-sifting role and guard and promote the jems.


2 orders of it’s your boss!

But seriously I hate working with non self critical developers because it’s exhausting trying to refute what they say. Although “asking questions” can help.


I think a surprising refined "meta" solution has come up in the last decade or so.

You can read an article, and figure out if it is crap for yourself.

But then you can check your work by reading the discussion around it (like HN comments). Look at the top (and bottom) comments. Match your thoughts against the opinions and comments of other critical thinkers.

A lot of critical thinking has already been done for you.

This doesn't always work, but a good comment/upvote/moderation system can be a surprising bullshit filter.

My comment does NOT apply to automated systems, or systems were money/seo/gaming have a payoff for someone. So please ignore this for facebook, for anything with sponsored results, for product reviews, or for wikipedia pages of wealthy or prominent individuals.


Well, part of the problem is that there are few detailed book reviews anymore. The Jolt Awards for books were at one time a good guide. Nonetheless, one place that has fairly in-depth Java book reviews of all places is Oracle's Java Magazine. [0]

[0] https://blogs.oracle.com/javamagazine/book-review-archive


It's a shame that it's now cool to hate on Java nowadays. It's still a great language to design web applications in, especially now with the newer releases and all the amazing features they put in. I will never understand why things like JavaScript are being used in the back end...


Ha, I just posted something similar almost at the same time, but you said it better.


There are dozens of us who would have stepped up if you two didn't.


I think Sturgeon was being generous


I believe part of problem is Google SEO. Tech content maybe bullshit, but marketing content is even more bullshit.

I remember times when we had slow internet and/or only subset of blogs we read from time to time. Most of development was done by reading books, specification of devices for writing drivers and so on.

Now, literally everyone is trying to do SEO and use lots of words in articles, kind of creating content, but in reality copying from someone else and modifying a little and trying to get lots back links. I remember when Quora had quality content, now everything is sales pitch. I feel like people are not trying to create quality content, they are trying to sell and to sell you need more back links.


Personal brand building is another major contributor to search engine content dilution.

Whenever I Google for something in hot new languages or frameworks, I have to sift through 10s of Medium articles from beginner developers who are trying to establish themselves as industry experts.

I don't want to read some junior developer's Medium post full of animated GIFs and a pseudo-tutorial that is really just entire source code files embedded as GitHub gists one file at a time. I just want to skip to the documentation and get to work.


The truly worrying development is when those same Medium posts start circling HN.

I’m not trying to be elitist, but what I enjoy about HN is seeing truly novel and interesting content, and every “crappy” article on the front page bumps an interesting one downwards into oblivion.


I’m ashamed to say that was me at some point. On top of that, those articles did nothing to further my career. All that mattered so far is my past experience, projects and how well I can (leet)code. Now if I start blogging again, it will have to be purely out of intellectual curiosity.


I think this is the same situation a lot of people find themselves in. I would say I'm the same. The further along I get in my career the more I find I'm interested in learning or exploring for my own good or interests, rather than some fake sense of credibility I got in the past.


Also me, but I did have one (on tolerance analysis) that helped my career.

It made rounds in the professional circles I traveled in and established myself as, while not necessarily a leader, someone at least very fluent in a particular process.

This was also in 2010 though, so the social landscape Was quite different


I confirm this doesn't do anything for your career, or at least not as much as just focusing that time on actual, paid work. I find that in my career my resume and experience that's on it as opposed to any side-projects or attempts at writing.


Yes, however on helping the career I think the writing is like a nice little detail on the resume, a way to make it standout a bit more, I also found that in a recent interview for a project an article I had just written on SVG was naturally relevant. As a general rule talking about little articles you've written isn't going to naturally happen in the interview because the interview process is focused on past work and horrible trick questions.

It has also been somewhat useful in projects where a concern with documentation has been expressed because the writing is a better example of my ability to document things than having worked on a lot of projects where you may be able to go see what we shipped but not be able to see anything of the documentation.

I think of the writing as the equivalent of a side project:

* it allows me to focus on something I want to learn

* it helps to make what I learn stick in my head

* it gives me a deadline and people who will send me emails to say how's it going with that

* it works as documentation for what I've learned

* it gives me a trivial amount of money for having taken the time to learn something. Basically the last article I wrote is paying for an annual Dropbox account, and a couple days worth of food for my family. It was way too much work for that to be worthwhile, but I did learn some things that will help with later stuff.


What's interesting is that this stuff works, which means there are idiot decision makers out there eating it up, which means the whole industry is ripe for disruption by someone who can see even an inch into the fog, so lets go do that


But HN was never hardcore tech content? It is more of general set of articles about wide range of tech issues.


Worrying development? HN has never been particularly enlightened in this respect, and has all of the same trends and superficial articles that emerge on the other networks. The illusion that it's some higher ground has never held true.


Based on your bio, you may be a bit biased in your assessment.


Someone should create that chart with ‘Lawful Good Dunning Kruger Expert’, ‘Chaotic Dunning Kruger Expert’, etc, since I need to know where I fit.


Biased, or simply consistent?


based and orangepilled


In my experience this is particularly egregious when trying to compare frameworks and libraries in the JS ecosystem. The posts usually boil down to “I wrote a hello world with X and Y, here are my thoughts”, or worse, “I wrote a hello world with X, didn’t even bother to write it with Y, here are my thoughts on why X is awesome and Y sucks”, or worse still, “I wrote a hello world with X, didn’t even bother to write it with Y, here are my thoughts on why X is awesome and Y sucks, and I’ll pretend I have ten years of experience with each.”


And those exact posts bafflingly make it to the front page of Hacker News somehow -- doubly so if you can include [esoteric language] into your "My thoughts on" title.

I recall an especially egregious one on Clojure where the author had used the language for all of about a week before writing up his detailed hot takes on some "cons" of the language, like needing to know some complicated thing called `let` in order too assign variables.


JavaScript seems particularly bad at this, especially compared to something like C or C++ which I'm more used to.


Ugh. I cringe every time I have an actual, non-trivial, issue or fairly technical question about whatever I'm working on lately.

I remember feeling it while I was working with Swift (50 articles titled: "What is a Protocol?" Give me a break!) and lately I keep running into all kinds of bizarre, complicated behaviors with Jackson in my Kotlin project. It's a new kind of hell to sift through every article that describes the "hello, world" of writing a single data class and having Jackson magically turn it into JSON.

P.S., if you can avoid mixing Jackson with Kotlin, save yourself the trouble.


Hard same on the Kotin/Jackson sadness. Gson also has a bunch of issues. Really want to cut my code over to Moshi but haven't worked up the energy for it. Maybe we all just want to wait till Kotlin serialization is production ready?


Does Gson still force you to write "beans"?

In any case, this project kind of didn't need any auto-magical serialization library, but the promise was reduced boilerplate. Instead, we just got way more complex boilerplate and a damn dependency forcing me to change how I want to write my code.


Pretty much. I'm all about data classes so the code reads just fine. Definitely less boilerplate than something like JsonObject. But using Gson means non-nullable fields can still be null if the incoming JSON doesn't have them. So you get these "impossible" NPEs. Also, this is more a complaint about the JVM type system but Gson can encode things that it can't decode into which really messes with my mental model.


My experience has been that there might actually be MORE boilerplate now than when I did ad-hoc translation to/from JsonObject.

inline classes straight-up don't work with Jackson, and probably never will. So for every class that has a field that is an inline class, I have to write a "builder class" that's exactly the same except replacing the inline class with the class it wraps.

Also, @JsonUnwrapped doesn't work with Kotlin. And, of course, doing anything with generics is a complex nightmare with Jackson (because of JVM's type erasure).

Not to mention, all these failures happen at runtime, so you don't even know your class is going to be a problem until you run the code.

The whole thing just sucks and I actually miss the simplicity of translating by hand...


Writing for money and reservation of copyright are, at bottom, the ruin of literature. No one writes anything that is worth writing, unless he writes entirely for the sake of his subject. What an inestimable boon it would be, if in every branch of literature there were only a few books, but those excellent! This can never happen, as long as money is to be made by writing. It seems as though the money lay under a curse; for every author degenerates as soon as he begins to put pen to paper in any way for the sake of gain. The best works of the greatest men all come from the time when they had to write for nothing or for very little.

...

There is no greater mistake than to suppose that the last work is always the more correct; that what is written later on is in every case an improvement on what was written before; and that change always means progress....

If the reader wishes to study any subject, let him beware of rushing to the newest books upon it, and confining his attention to them alone, under the notion that science is always advancing, and that the old books have been drawn upon in the writing of the new. They have been drawn upon, it is true; but how? The writer of the new book often does not understand the old books thoroughly, and yet he is unwilling to take their exact words; so he bungles them, and says in his own bad way that which has been said very much better and more clearly by the old writers, who wrote from their own lively knowledge of the subject....

It often happens that an old and excellent book is ousted by new and bad ones, which, written for money, appear with an air of great pretension and much puffing on the part of friends. In science a man tries to make his mark by bringing out something fresh. This often means nothing more than that he attacks some received theory which is quite correct, in order to make room for his own false notions. Sometimes the effort is successful for a time; and then a return is made to the old and true theory. These innovators are serious about nothing but their own precious self: it is this that they want to put forward, and the quick way of doing so, as they think, is to start a paradox. ... Hence it frequently happens that the course of science is retrogressive.

-- Arthur Schopenhauer, "On Authorship"

https://www.gutenberg.org/files/10714/10714-h/10714-h.htm#li...


... and by quoting Schopenhauer's beautiful prose instead of using your own words you are following his wise advice. Montaigne said something similar when confronted as to why he quoted Plutarch so often, replying that if he believed someone had already said something in a way that he couldn't improve, why on earth would he say it in his own words? I would very much have preferred to quote the great man himself of course, for this very reason, but couldn't locate this particular passage.


Very much.

This Schopenhauer essay resonates strongly with me, hitting on and unifying numerous concepts I'd been playing with. And saying it well.

Even in translation ;-)

I'm still upset that the University of Adelaide's book server was shut down, as it had a wonderfully-formatted set of the essays, shared recently to HN. See: https://news.ycombinator.com/item?id=21386663


... As for the natural faculties within me, of which my writing is the proof, I feel them bending under the burden. My ideas and my judgement merely grope their way forward, faltering, tripping, and stumbling; and when I have advanced as far as I can, I am still not at all satisfied. I can see more country ahead, but with so disturbed and clouded a vision that I can distinguish nothing. And when I venture to write indifferently of whatever comes into my head, relying only on my own natural resources, I very often light upon the matter I am trying to deal with in some good author, as I did just now in Plutarch, in his discourse on the strength of the imagination. Then I realize how weak and poor, how heavy and lifeless I am, in comparison with them, and feel pity and contempt for myself. Yet I take pleasure in the fact that my opinions have often the honour of coinciding with theirs and that I follow them, though far behind, proclaiming their virtues. I am glad too that I have the advantage, which many have not, of recognizing the great difference between them and myself. And yet I allow my own ideas to run their course, feeble and trivial as when I first conceived them, without plastering and patching the defects revealed to me by this comparison. A man must have strong legs if he intends to keep up with people like that. The injudicious writers of our century who scatter about their valueless works whole passages from old authors, in order to increase their own reputations, do just the reverse. For the infinitely greater brilliance of the ancients makes their own stuff look so pale, dull, and ugly that they lose much more than they gain.

Here are two contrary points of view. The philosoper Chrysippus dropped into his books not just passages but whole works by other authors, including in one instance the complete Medea of Euripides; and ApoUodorus said that if all that was not his own were to be cut out of his works the paper would be quite blank. Epicurus, on the other hand, did not introduce a single quotation into any of the three hundred volumes that he left behind him. I happened the other day to light on such a passage. I had been languidly following a string of French words, so bloodless, fleshless, and devoid of substance and meaning that they were just words of French and no more. Then at the end of this long and tiresome road I came upon a rich and lofty sentence which towered into the clouds. If I had found the slope gentle and the ascent somewhat gradual, it would have been excusable. But the rise was so sheer and precipitous that after the first six words I felt myself flying into another world, from which I recognized the depth of the abyss out of which I had come. So deep was it that I have never had the heart to plunge into it again. If I were to load one of my discourses with such rich spoils, it would throw too much light on the stupidity of the rest.

To censure my own faults in some other person seems to me no more incongruous than to censure, as I often do, another's in myself. They must be denounced everywhere, and be allowed no place of sanctuary. I know very well how boldly I myself attempt at every turn to rise to the level of my purloinings and to remain there, even rashly hoping that I can prevent the judicial eye from discovering them. In this endeavour my industry plays as great a part as my inventive powers. And then, I do not contend with those ancient champions in the mass and hand to hand, but only in repeated brushes, in slight and trivial encounters. I do not press them hard; I merely try their strength and never go as far as I hesitatingly intend. If I could hold my own with them I should be doing well, for I only attack them at their strongest points.

To cover themselves, as I have seen some writers doing, so completely in other men's armour as not to leave even their finger-tips showing; to compose a work from pieces gathered here and there among the ancients - an easy task for a man of learning who is treating an ordinary subject - and then to attempt to conceal the theft and pass it all off as their own; this is in the first place criminal and cowardly, in that having no private resources with which to make a display, they try to boost themselves with other men's wealth; and secondly, it is very foolish to be satisfied by gaining the ignorant approbation of the vulgar through trickery, while discrediting oneself in the eyes of the intelligent. For their praise alone carries any weight, and they turn up their noses at all this borrowed decoration. For my part, I would do anything rather than that. I only quote others to make myself more explicit. ...

- Michel de Montaigne, "On the education of children" https://www.gutenberg.org/files/3585/3585.txt


Thank you!

Yes, that is beautiful, true, and illuminating.


Thanks for reading, I was a bit worried about posting such a long quotation, but couldn't bring myself to butchering this marvel, would have felt like cutting a master painting. Just like Chrysippus.


This drives me crazy! I hate searching for documentation and the top results are blogs containing outdated copy and paste of the official docs with some witty text and gifs.


I've recently started using Express.js for a project at work, and I've never before encountered a seemingly popular framework/language with such frustrating content churned out by the community. Express's official docs have all the technical specs you could ask for, but the framework is very light weight without any structure and feels more like a library, sort of like Flask. I wanted to see what a typical app structure looks like, but just about every single "article" I found was either a copy/paste of the same app with everything crammed into one index.js file (routing, logic, db queries, etc...), or they were walls of text filled with occasional code snippets and didn't even provide a repo for reference. The community feels like it's targeting complete beginners with its simple examples, lengthy explanations of trivial tasks and extremely little coverage of architecture. My experience with Express felt like PHP 10 years ago with w3schools.


Or SO answers from 2011, pasting official docs.


> some junior developer's Medium post full of animated GIFs

Don't forget emojis! Such a waste of time! ⌛⌛⌛


As a programmer with some 20 years of experience who likes to write tutorials on original research and techniques — you can pry my animated gifs out of my cold dead fingers! All my life I waited for broadband to be widespread enough to write articles with rich embedded animations.

And yes, sometimes they only serve the purpose of entertainment or emotional tone setting. Other times they’re actual part of the content.

Gifs are great

Edit: you downvote and yet I often get comments appreaciating how the gifs make my 2000 word emails feel like a quick short read.


> Edit: you downvote and yet I often get comments appreaciating how the gifs make my 2000 word emails feel like a quick short read.

I sampled your work. It's exactly what we're talking about.

I'm sure this works for you, financially and SEO-wise.. but.. maybe use 500 words and no gifs instead?


I often do.

My point is that this stuff doesn’t have to be boring and dry. It’s okay for content to reflect having fun when you’re having fun.

Even my college professors used jokes in their lectures.


It's not the jokes I'm against - it's that monetizable/SEO-style writing, where everything is repeated twice or thrice, and there's loads of filler text.

Actually, let me change my mind on the GIFs. Keep the best ones.


Go you! I love high quality written content with a lighter tone. I find it incredibly difficult to focus on dry tests because of my ADHD.


Thanks! I actually study fiction writers and standup comedians to help me write/speak better. It makes a world of difference


Me too, especially when they're accompanied by moving pictures.


Animated gifs and even infamous features like the "blink" tag are just tools. They need to be used properly.


There's so many bad examples online that I can't imagine trying to learn development from scratch these days.


If it runs, it ships!

It shouldn't be this way, but it frequently is.


The Medium articles are a lot more entertaining if you read them out loud with a strong 'Valley' accent.


Yes, this is happening even at the code level, resulting in a flood of modules/packages with shallow capabilities.


> Medium post full of animated GIFs and a pseudo-tutorial...

It's almost like trying to find recipes on the internet in the age of SEO and 'personal brand building'.

To get to the content you want (ingredients and method), you have to scroll through a mess of unrelated, low quality, insincere blog-like content with pictures etc..

When you actually find the recipe, half the method (always the bits you don't bloody know) is interwoven into the irritating blog content or on a separate 'blog' entry page entirely.

By the time you realise there's nothing of value and decide to turn back, it's too late; they've already won. You've given them a page view, interacted with the site, and maybe their ads have loaded, too.

At least you can find good cookbooks in op shops! Tech books are great, but they're not always the best resource when you're curious about a tool and want something like an implementation or configuration guide, or a post-implementation review.

I have random blogs to thank for clear guides with great explanations on implementing and configuring loads of things, like early versions of webpack. It seems that in only a few years, quality content has rapidly become so much harder to find amidst the mass of low quality SEO bait.


That's an interesting, albeit selfish, perspective.

Experienced developers usually aren't busy writing blog posts. Nor are they engaged on HN. As the old saying goes, those who can are out doing, those who can't `teach'.

This touched a nerve, but sorry it's spot on. The more faltering the career, the less certain the skills, the more likely the person has a vigorous social media and blog presence.


Given the great reception this has received, let me give an example, and one of HN's great "successes" - patio11.

Guy made a tiny, miserable little service that would have made more money if he worked at Walmart. He was the seer who provided day after day of front page content for this site, the "fake it till you make it" ruse in full effect. Because his product was so miserably unsuccessfully he instead put all of his effort into blog posts and "lessons" for people to follow, and the suckers lined up.

People with actually successful products were just off being successful.


Uggh - this!

Maybe I'm so used to it for programming queries, but I've gotten back into electronics and ham radio after a long time, and have always dreamed of owning a decent oscilloscope. Googling 'good digital hobbyist oscilloscope' just now was a frustrating waste of time. It's just pages and pages of regurgitated specs and affiliate links, no useful _actual_ reviews or anything...

Take this top 10 result. It's on Medium which is new and hip and nice so must be of high quality...

https://medium.com/@Amyperlman/best-buying-oscilloscope-for-...

Oh cool, hmm ok - what else does the author write about? "Things to consider before buying a camera for hunting" - "Drug Rehab for Married Couples" - <<Several>> Reviews for a particular line of vaccum cleaner, Baltimore Security Cameras and Interior Design in India. I mean sure they could genuinely have diverse interests and a chaotic and international personal life - but these articles are just keyword stuffing for another bunch of 'content' that will helpfully let you 'check the price on Amazon' for just about anything...


Even though I generally prefer reading to watching, I've found in the past few years that YouTube is better for reviews, and I think it's actually because of this.

If you don't actually recognize the channel, you can usually tell if it's worthwhile by subscriber count, the other (types of) videos they've posted, and usually just by watching for tens of seconds. Most paid reviews seem to say so (unlike written blogs), and you can judge their bias appropriately. Plus for many things, seeing it in action is much, much better than written descriptions or (carefully chosen) pictures.

For example, it's hard to disguise a crappy oscilloscope UI in a video (and if the reviewer doesn't show that, be suspicious!)


Youtube is better, but over the last few years, I've noticed that it's getting harder to find decent reviews, because the algorithm recommends so many fake review channels. It's better than a google search, but there's still so many terrible results to sort through.

Youtube's algorithm encourages video farms that upload frequently even if they recycle content. Ann Reardon discusses this problem as it relates to recipe video's frequently on her cooking channel.


You can still get hoodwinked by youtubers[0] who (to the untrained eye) look like they know what they are talking about but are actually grifters[1] wasting your time

[0]: Siraj Raval (700k subscribers!): https://www.youtube.com/channel/UCWN3xxRkmTPmbKwht9FuE5A

[1]: https://www.plagiarismtoday.com/2019/10/16/why-siraj-ravals-...


> Even though I generally prefer reading to watching, I've found in the past few years that YouTube is better for reviews[..]

My pet theory why YouTube is better is that there is no incentive to make videos longer. Blog post end up bloated and thin on real information because it is considered good SEO and apparently Google really tends to rank longer articles higher. Same is true for tech books, which are often bloated because the author has to reach their target page count.

YouTube videos seem to be mostly as long as they need to be to tell the story they want to tell. This is not universally true for video content though. If you look at online learning platforms, like Udemy for example, you can find many courses that spread an hour worth of content over typically five or six hours. My fear is that Google will someday decide to make the length of a video a ranking factor and we will have the same bloated videos on YouTube too.

> Most paid reviews seem to say so (unlike written blogs), and you can judge their bias appropriately.

Producing decent video content is much more elaborate and expensive than written reviews. My suspicion is that on YouTube paid reviews are even more common than on blogs and the norm is just not to mention it. Doesn't mean they are useless of course, just as you wrote "judge their bias appropriately".


> My pet theory why YouTube is better is that there is no incentive to make videos longer. [...] YouTube videos seem to be mostly as long as they need to be to tell the story they want to tell.

I don't think this is an accident: YouTube apparently ranks based on watch time / retention, so if you make your video too long and people don't watch to the end it hurts you.


Ha. I strongly disagree.

Any kind of machine maintenance video has so much preamble, when what I'm really after is like 25 seconds of silently accessing the part, pausing to circle stuff in red, and narrating stuff that's hard to see from the video


The first paragraph:

> Best Oscilloscopes are not a common field where people would choose to spend their spare time relaxing. However, analyzing and measuring signals might be an interesting fact for most engineers or people looking for complexity, isn’t it? That’s what we actually thought about before doing our research.

Reads like it went through Google translate twice.


Google's own tools make flooding their main moneymaker with junk easier and more accessible. There's something in that but I'm not sure what...


Actually, that looks like a filled-in template with some relevant keywords for content marketing.


> _______ are not a common field where people would choose to ________ . However, _______ might be an interesting fact for most _____ or people looking for _____, isn’t it? That’s what we actually thought about before doing our research.

The king is naked!


Some search hits are deeper than others. Specifically, forums. EEVblog comes to mind. Figure out the spectrum of specific brands/models, then read and watch some reviews.


That Medium page on is hilarious! I recommend it if you are into oscilloscopes and want a laugh. My favorite parts are the opening paragraphs and the list of Key Points for each scope, which include:

• Available only in Grey. [Rigol]

• The color available is Grey. [Siglent]

• The devices comes only in blue. [LIUMY]

Yes, one of the main things I look for in a scope is what color it comes in!

• Works with both laptop and desktop PC. [Hantek]

Uh, why would any USB device not work with both a laptop and desktop PC?


Google should ban all sites with Amazon affiliate links from its search engine.


Or when you want to compare two products and the top result(s) are just auto-generated pages that dump the stats/spec of each product side by side. I hate that so much. I want to read what a human who has tried both thinks.


There was a time when searching for "A vs B" produced useful results. Nowadays a search like this is completely useless. I wish those auto-generated sites would completely disappear from the search results.


Appending "reddit" to the query or doing it on Reddit directly can often return usable information.


It's surprising Google doesn't downrank such pages.


the worst


> I believe part of problem is Google SEO.

This and the fact that Google search is actually as dumb as a sackful of hammers.

Don't get me wrong, for the longest time Google's results were "good enough", but Google has no real concept of the quality of a result (they've tried and it worked for a while - e.g., PageRank). Still, fundamentally their algorithms aren't smart enough to figure out whether any given piece of content is intrinsically worthwhile.

That's really important in a world where most content is, regardless of Google's guidelines, primarily written for the benefit of GoogleBot, to harvest clicks or drive traffic.

Unfortunately Google has literally zero incentive to change this situation (because they're making an insane amount of money off the back of the status quo), so they won't[1].

Logically then, the time is ripe for a new search engine to disrupt but the problem - that of determining intrinsic worth - is really hard to solve, so as yet nobody has, and Google still reigns supreme as the most popular search engine.

[1] It is also possible that I'm being too harsh here: they might be trying to change it - perhaps because they're worried about eventually being disrupted - but, as noted in the following paragraph, the problem is REALLY hard.


> Logically then, the time is ripe for a new search engine to disrupt but the problem - that of determining intrinsic worth - is really hard to solve, so as yet nobody has

I'm sort-of trying to solve this with a recommender system approach.[1] Search isn't my primary objective; I'm mainly focusing on the case where you want to be made aware of relevant information on an ongoing basis but you aren't necessarily looking for something specific.

But that involves building up a ratings database of lots of different URLs. If it becomes really popular, I'd like to experiment with search. It could start with a "normal" search algorithm but then adjust the results based on rating data. E.g. "the top result for this query is X, but people with similar rating data to you always down vote that link, so we'll move that result down".

I've heard people complain about how Google gives you personalized search results sometimes, but I'm not sure if the approach is actually bad. Perhaps it could work if it was focused on from the start instead of bolted on.

[1] https://findka.com


Interesting. I'd thought about some sort of meta-search service running over Google, Bing, etc., and aggregating results, that was tied in with some way of rating recommending URLs.

I've never got around to doing it and one of the reasons (excuses) is that I haven't yet figured out a way to stop bad actors exploiting it by, e.g., mass downvoting URLs of competitors. I did think about some sort of moving average, or bias toward more recent votes, which would at least somewhat mitigate against transient actions of this kind, but it's harder to deal with a sustained attack like this.


I've thought about that a fair amount also. I think the key is personalization. If bad actors downvoted a bunch of items, it would only affect people who already shared a lot of similar votes with those actors.

That is still exploitable: if I know you like A, B, and C, (perhaps those are popular items), I could also upvote those items and then downvote another item D. I have an idea for countering this: keep track of history. So instead of just measuring ratings overlap ("of items you've both rated, 75% of items were rated the same"), you keep track of the performance of recommendations made from that user ("of Alice's items that we recommended to Bob, Bob upvoted them 25% of the time").

I haven't thought about this super deeply yet, but I think to beat that, you'd have to actually provide valuable data to the system in the first place.


To generalize that a bit, I guess I'm talking about a reputation network. You could visualize it with a directed graph that has edges weighted from -1 to 1 (0 default). Recommendation + rating history is used in some way to assign those weights, and then future recommendations are taken primarily from other users who have high weights from your perspective.


Quick question about findka, Is the idea to only upvote/downvote things you have actually experienced and liked or dislike, or do you also upvote/downvote things you don't know but like or dislike?

I would think the first case would result in way better data (which is why (I think) last.fm recommendation system is so good), but the latter case seems to be the natural thing to do, humans love to judge shit without actually engaging with stuff.


Mainly the former. Ideally you've experienced the things you've rated, but in many cases you can probably judge fairly accurately if you're interested in something based on a short description.

That brings up a key point which I'm not sure is clear to users or not: voting on items specifically means "this is/is not a good recommendation for me". It's not a judgment on the goodness of the item in general. So if findka showed me e.g. an article on pottery that looked high quality, I'd probably still downvote it since I'm not into pottery.


I think that is not really communicated in the current design, reminds me of the ratings on Netflix where they are intended as "Our estimation of this contents rating for you based on your viewing history" while most people I talked about it just thought it was the rating of the thing in itself.


Good to know, any suggestions for making it clearer? Maybe thumbs up/down is the wrong labeling; perhaps something like "show me more like this" and "not interested"... though I have no idea what icons I would use for that.


Might even be a good idea to just have text labels, I think just icons are way overrated in design.

[I hated this] [I'm interested in this] [I liked this]


What I don't get is how SEO isn't countered by unvisiting... By which I mean navigating back to the google search, I always assumed that would be a clear indicator to google that it's not what the user was looking for.

Maybe this does happen but it not weighted highly enough against SEO.


Probably because both 'what the user was looking for' and 'why they left the page quickly' are complex issues.

For instance, quite a few times I'll open a page in Google's results, scan the content and go back to compare it to another result. That doesn't necessarily mean I hate the first page or think it's terrible, just that I wanted to see what it had to offer.

It can also mean I did find the answer there, and am returning to Google to search for something else instead.

It's tough to distinguish cases like those from 'the content was bad' and 'the content was not what I was looking for'.

There's also the worry that it might end up hurting user incentives too, or alter the way in which users browse the internet as a whole.

After all, since finding out that YouTube rewards/punishes creators based on watch time/how much of the video someone watches, I'm now hesitant to even watch many videos at all, since I know some guy's career might potentially be put on the line.

Perhaps Google worries other people will be the same, and stop clicking as many results knowing that Google might punish the affected websites for not staying long enough.


A lot of times I middle click any interesting links I find on Google, in which case it becomes hard for Google to know if I unvisited a site. It's not like they can track me clicking the Back button on my browser and arriving back to the search results


I've no idea whether they do this or not but it's easy enough to know when a tab or window is focussed or not. I have a games site and use this to pause/unpause games, music, etc.

They could hook this into Google Analytics and subtract the time you spent with that tab/window not focussed from your session duration.

I do fundamentally agree that session duration may not be the worst proxy for worthwhile content or, at least, engaging content, snd I think Google may use it as such.


Or those fake how-to tutorial pages. Often when I’m looking up, say, error codes in Windows, I need to wade through pages of “Step 1: Download the MyNewFreeComputerCleaner.biz app”


after working at couple of startups, I also noticed worrying trend.

* 21 years old marketer writing about life crisis in 40s

* fashion blogger explaining is Teflon harmful or not (come on, fashion and chemistry?)

* 18 years old student who never immigrated to another country or studied abroad writing about how difficult is immigrant life and what to look for in different country and many more similar content.


About 5 years ago I attended a local code meetup and someone gave a presentation about this new TypeScript thing. He basically just explained the basic syntax, concepts. etc. A bit boring, but not the worst I've seen.

Then in the Q&A someone asked a "In our experience, we've had problems with X, what's your take?" (I've forgotten what X was specifically), and the guy replied with "well, actually, we haven't really used it yet, we're just looking at it".

So ... he basically just read the TypeScript "getting started" tutorial, transformed it to a presentation, and had no real knowledge of TypeScript.

The entire talk seemed pretty useless to me. I don't even know how accurate that presentation was, because there's much more to using a language effectively than the basic syntax learned from a glance at a tutorial page.


This seems very common in JS land, I once saw a talk in a conf which seemed very basic, later on I stumbled onto a tweet about how the speaker often submits abstracts to CFPs often not knowing much(or at all) about the subject, which serves as motivation to learn and talk about it, works well after having a track record of speaking at events some conferences you can get invited or not have to prove yourself so much to get accepted to speak.

Then I was looking at other conferences lineups and saw many repeat speakers from that same conf, often with the same talk, turned me off quite a bit from going to any more conferences, lots of the same, basic content, with not much expertise behind it.


In general I find presentations at conferences not all that interesting; I've been to conferences where I've not attended a single presentation. There are some good talks, but they're not common. Giving a good presentation requires a few different skill and some practice – I'm not good at it either.

The value is mostly in hanging out with various people. The best experience has generally been when I went alone and met loads of new people, instead of going with coworkers or friends and then just hang out with them. Not that's not fun either, but I can do that next weekend anyway.


How did you meet people if you didn't go to the talks?


You meet them in the hallways outside the talks.


Yeah, pretty much. At this one particular conference there were actually loads of stands in the hallway and I would hang out and chat with various people there.

The more professionally organised ones don't tend to have that many stands, except for paying sponsors. I understand why they do that, but I think there's good value in "community stands" too.

I mean, the talks themselves are just "shut up and listen", right? Not too much socializing happening there. I think that revolving the entire conference around presentations is probably not always the best format.


At the conferences I went to it looked like most (80%) shuffled from one talk to another. The hallways were for walking to different talks. You could potentially talk in the queue to get in or out of a talk but no one talked to me at all.

There was a big space for vendors to have stalls but if you talked to them it was like talking to a sales person. Sometimes they had a tech-oriented sales person but it was still selling you their product.


I feel like this is not specific to TS or JS but any of these modern technologies that are popular and attract beginners.


It takes quite a lot of time to prepare talk and it is not like they would pay all that impressively.

So I think that repeated talks and intro talks are to be expected. Through I did not mind them, I used them to get idea about new thing X while I have time set aside for learning.


>It takes quite a lot of time to prepare talk and it is not like they would pay all that impressively.

Most tech events don't in general pay for speakers or any travel. (Keynotes, scholarships, etc. are among the sometimes exceptions.)

I rarely literally re-use a presentation slide for slide but many presentations I give are based on an earlier presentation I gave. In most cases, a different conference is going to be a mostly different audience. In general, it doesn't make a lot of sense to just dump a presentation because I gave it once to a couple hundred peop,e.


>The entire talk seemed pretty useless to me.

To you. On the flip side, it provided an introductory level overview of a concept many watching/attending may not have looked into themselves, or were thinking of looking into. It also provided a different form of introduction, which could be valuable for attendees with a learning style preference different to that of look-at-a-how-to or check-out-the-docs.

>the guy replied with "well, actually, we haven't really used it yet, we're just looking at it".

Hey, at least he was honest and didn't try to bluff his way through an answer, as many in our industry will.

Overall, depending on the audience and context, it sounds like it may have been worthwhile for many attendees. Plus he got to work on his soft skills, and doing so with such vulnerability could inspire others to also.


If I go to a talk about a piece of technology, I expect the presenter to have enough experience with it to be able to provide me with a means of determining where I am situated in said technology's landscape, and what frame of reference is required to evaluate how to move about that landscape.

It doesn't matter how eloquent and thorough the introductory tutorial is, if the presenter has not experienced the technology sufficiently to have accumulated a few scars[1], they will not have the ability to convey the relative importance of the various aspects of the introduction, with which can be modified simply as a matter of taste, and which should be followed unless very careful consideration of global engineering context, and a full appreciation of the consequences.

If you are unable to meet that bar, at the very least, your abstract should make that abundantly clear out of respect for your audience.

[1] or at least have the experience to say that normally they would have expected to get bitten by something by their point in usage, but the technology meets their requirements so thoroughly that it has been particularly smooth sailing.


Well this talk was at a local Meetup so presumably the attendees got what they paid for. If you expect a high-quality talk I'm sure you would shell out an appropriate amount of money for it.


I attended exactly because of those reasons. The problem is mostly that actually explaining a language (even from a high-level overview) well is a bit more involved than just explaining the syntax and the like.

For example I currently mostly work with Go, and if I would give a high-level presentation about Go I'd start with the "tour of Go" tutorial, but I'd also add some context to some things, explain where you need to be careful to avoid problems, and emphasize the usefulness of other things that may not be obvious at a glance. That kind of stuff. I think the presentation format is a great way for doing that.

A beginning JavaScript programmer might explain the "with" keyword, which would be a mistake. I have no idea if the presentation contained any mistakes like that.

I don't work much with JS, and I haven't looked much as TypeScript since, but I didn't really learn all that much more than what I already knew: "TypeScript is JavaScript with optional typing".

Was it useful for others? Maybe; I hope so. But for me personally I consider it a wasted hour in my life.


>Was it useful for others? Maybe; I hope so. But for me personally I consider it a wasted hour in my life.

Is this not true of most tech meetups / tech conferences though? I feel like they all carry an implicit YMMV with them, which attendees know when deciding to join.


I can barely speak in front of a crowd on something I’ve got 20 years experience in.


This is still something I really can't wrap my mind around. What is the key difference in early life between people who will speak authoritatively regardless of competence, across the spectrum to experts who can't or won't? I don't think Dunning-Kruger explains it because it's not like every shy expert used to be a gregarious beginner.


I have seen lots of talks by experts about the technology they're experts in, but I have seen lots of the other kind as well.

I think Dunning-Kruger is part of it, but also excitement.

If you are the expert you probably got that way by putting in a lot of time, you are at any rate older than when you started out and you may be in fact be quite older than the average developer, often older people do not have the same enthusiasm and excitement for things (although sure there are many that do) so that cuts down the number of people who have experience who also have enthusiasm for getting up and talking.

Getting up and Talking means doing work for it, if you have kids you may not want to do that work unless your job is one where you have to do it. So if you are an older expert with kids but not employed in an evangelist role you probably are not going to go out and do talks.

The expert in a subject may see so deeply into the subject that it is difficult for them to express the gee-whiz aspects that will attract other people. Those who know more are not necessarily able to express that knowledge in an interesting way.

The expert may have lost interest in the matter as they gain in expertise, or they may think things that others will find amazing and interesting to be so obvious and trivial as to not be worth expressing.

For these reasons it may be that talks on a subject are preponderantly given by those with less than expert mastery of the subject.


I think there is some personality difference, but also one of values.

Do you think or feel it is shameful for you to give introductory talk? Did you grew up in environment where such thing was mocked or did you grew up somewhere it was praised? Do you think it matters super much if someone in audiemce looks down on you or are you rather motivated by single person that likes you?

Do you think you need to be super awesome experienced speaker to make first public talk? Are you ok having public talk with primary purpose being to learn doing public talks?

These imo make the difference. It is not like there would be lines of experts wanting to talk.


It’s called being shameless. I hate to be that one sentence reply, but why beat around the bush here?


I know someone who does this and people lap it up. I've heard other people refer to his expertise too many times for my liking.


If I can find the content online and not have to deal being around of bunch of people, I'll just save my money.


The bigger question would be why didn’t that person feel any shame in giving that presentation?


That's content marketing. It's the poster child of bullshit. If the people from your examples actually wrote their pieces, it's already above average. In my experience, from working a desk away from a few social media marketers, the usual case is copy-pasting from other blogspam on the same topic.


You go on Upwork and you will find all sorts of requirements for artificial content.


The internet is a big bucket where everyone drops all sorts of stuff in. Some people drop in gold nuggets, sometimes even diamonds, many other people drop in less valuable materials, and some dump in a torrent of bodily fluids.

Our current solution is to rely on magical black box algorithms to give us the diamonds, but it's been creaking for a while.

I'm not sure how to make this better: one person's turd is another person's diamond, and people trying to game the system will always be a problem.


Old school links might be a solution. I remember back in the day those blog websites which contained "links" page to the websites that owner likes and recommends. It's true P2P solution and does not require anything to invent. If you own a website and know some rare but valuable gems, just share them. Someone will find them. I think that's how Internet should really work.

As a side effect, it should really help Google and other search engines to rank those websites. External links of good quality still the best SEO.


Yeah, I actually maintain such a list on my own site. I should update it more often though.

I think the biggest problem isn't so much find "hey, that's a cool article"-type of content, but typing in [programming concept] in Google. What I want to find is things like in-depth experiences and advice regarding this which complement the manual. What I actually find it loads of "howtos" with "copy this" which just rehash the manual.

Results vary a bit depending on [programming concept], and I don't think simple "getting started with"-articles are completely useless either. But generally speaking, there are too many of them, many of them are not of high quality, and it obscures more in-depth content.

I'm not sure if maintaining a list of links would really solve that. Perhaps community projects like "awesome-foo"-lists have some potential here, but in practice I've found many of them to be dumping grounds rather than carefully curated.


Yes. Many website owners are too scared to link out because they're worried it'll penalise their rankings in Google. If you have hundreds of outbound links they can also be a pain to manage since so many domains get recycled into something else.

But I fully agree, people should be creating their own ecosystems with links, rather than keeping huge portals happy.


Honestly, I wish I could just remove commercial results from google as part of the query. Some terms are essentially now useless because the first N pages are just ecom sites. Google definitely knows which sites are commercial because they’ve been pushing product metadata for about a decade now and serve ads for the same clients....


Of all the people who got all excited that the internet would "democratize information," most seemed to be thinking on the demand side. And it did come to pass, but very few seem to have anticipated that it would democratize the supply side too. Turns out the much-maligned elitism and gatekeeping of the past were actually performing (with imperfect fairness perhaps) the quality-control function they always purported to be performing.


> Turns out the much-maligned elitism and gatekeeping of the past were actually performing (with imperfect fairness perhaps) the quality-control function they always purported to be performing.

Do you have an example? I’m getting strong “century of the self” vibes from this post.

If you’re referring to “fake news”, you should also acknowledge that the current protests across the nation would not exist at all without social media. People who want to characterize the effects as monolithically positive or negative leave me scratching my head, and I certainly don’t want to return to getting all my news via AP.


I don't get the reference. Worry less about "vibes," I guess would be my advice. And consider that if someone says "brown cows eat grass" they're not trying to describe the entire universe; they're actually taking it as a given that your brain will work hard enough to remember that non-brown cows, and non-grass-eating cows, and even brown, non-grass-eating cows exist and have their own stories that are outside the scope of this one.

"Once upon a time, Little Red Riding Hood was going to go to..."

"NOT ALL RIDING HOODS ARE RED AND FRANKLY I OBJECT TO ANYONE WHO MONOLITHICALLY TRIES TO SAY SO AND I'M GETTING A VIBE... SEIZE HIM!"

To teach yourself programming in 1990 you would've gone to a bookstore or library, that employed a buyer/curator, who bought from a distributor, who bought from a publisher, who bought from an author, who probably also dealt with an agent and an editor. Other than the author and his/her own desire to produce something good, there were 3-5 other layers in the process, 3-5 other entities making the decision, should we submit this, should we publish this, should we distribute this, should we buy this and devote shelf space to selling it. Each of those steps is a gate through which only a limited quantity can pass, so whatever else it actually means, the book you pick up off the shelf in 1990 has passed through all those gates. Nowadays excellent and shitty writers alike are free of that.


It's hard for me to see society being able to self-critique via social media as a bad thing—newspaper headlines have certainly been exploiting the same linguistic tricks you point out for centuries. I don't see why it's bad to return the favor and build a culture that isn't represented by legacy/traditional/whatever media.


I'm not saying it's bad; there are good & bad aspects of everything. I don't even know if something can "be bad" or can "be good." Everything is both. It's the dual nature of reality. The tao symbol has light & dark, touching each other & wrapped around each other in a dance, and furthermore there's a dot of the light inside the dark and vice versa. One thing lives right in the center of its opposite. Feckin deep I know rite? A wheel carries loads and runs people over. Babies are cute and pains in the ass. Democratization of information means more democracy in information which means less aristocracy in information, I mean it's as simple as that. (And democracy and aristocracy each have good & bad aspects.)

The thing putting a negative spin on it is that at least in this author's opinion, "Most tech content is bullshit." I'm saying maybe that's because now we have access to the bottom 90% too along with the top 10% that we already had. (There was bullshit in the old days too of course, but it was usually found coming out of someone's mouth as opposed to in a book that someone bothered to spend money to print thousands of times. Although there are exceptions there too! It's death by a thousand disclaimers up in here!)


My solution for this problem: 1) stop trying to learn from random blogs, get a book. Books are still out there and you can learn just as good from them now as 20 years ago.

2) Get a subset of blogs to follow and stick to it. If you want to search in specific sites google has "site:" operator, you can search on specific sites.

3) by following 1 and 2 you can easily stop visiting shitty blogs made only for SEO, when they won't see any traffic they will fold because they will see no one is caring about what they write.

I am in process of implementing that. Got some books from humble bundle in topic that I am interested in, so no browsing crap until I get through those.


The main reason books are better is because they are harder to write and produce. The person making the book actually has to invest a lot of their time in making it happen, unlike a blog post.

I've seen lots of articles on hacker news (and other places) that is "PART 1 of..." which does the introduction to what they plan on teaching, and then it just dies right there in the land of "PART 1's"

With a book, if you stop at part 1, no one is going to publish your book.

Another thing about books/web, is books go MUCH deeper into topics. It seems like 99% of the content on the web is "INTRO to xyz" but never "Advanced xyz"

Books are also broken into logical section so you have a learning path you can progress through; not just random content that you are to piece together yourself.

So, yes, very good advice; if you want to learn something, read the book.

blog posts are more just advertisements for buying an actual book.


Unfortunately today a lot of the good content is hosted on the same domains as the terrible content. This is one of the many great downsides to content centralization.

If I read a really great piece of tech content it's not going to help me to use that domain in a site: query later when it's so often going to be medium.com or dev.to (which is starting to fill up with this same kind of bullshit content in the article).


>"1) stop trying to learn from random blogs, get a book. Books are still out there and you can learn just as good from them now as 20 years ago."

Many books are not much better. While blog posts are bloated for SEO purposes, books are bloated to reach their target page count.


And they often assume the reader is a complete novice, which means a lot of pages are wasted on obvious yada yada and then there's less space for genuinely interesting deep stuff that you'd only learn from an expert (or through a lot of practice and trial & error).


I think the solution (or at least a big part of it) is the resurgence of real blogs. When real developers write deeply technical posts about their experiences, on their own sites, everybody wins. Discovery is an issue, but there have been a number of HN threads recently on ways to mitigate this. Webrings, blogrolls, RSS... there was never going to be a super-convenient or efficient way to generate a high-quality, high signal-to-noise ratio set of sources. But curating your own preferred set of such sites, and making a habit of taking and publishing dev notes on your projects, and participating in the blog revival, is a step in the right direction.


IMHO the worst is that lot of young people actually consume, like and share that SEO/marketing stuff and spread it around without much thoughts. That’s the most popular dev content you will find on dev.to, medium, YouTube (for some reasons dev related videos became huge last year), and other publishing platforms. They don’t just generate useless content, they in fact have a public for it, thus little reason to stop.


My life became a lot better when I stopped reading towards data science (on Medium). It was just so much terrible tutorial content which was not only wrong, but actively misleading.


What are your sources for data science news?


Books if you need to learn a topic.

Papers if you need to keep up with a topic.

I used to follow statsblogs, but that's dead now (the collection, most of the blogs still exist).

Anything that isn't covered in these forums probably isn't important enough to worry about.


It’s fair to say that a Google has completely failed at its mission to organize the world’s information and make it universally accessible.


No, they organize the world's information. It is just that the information changed to be more easily organized by Google.


Give Sturgeon's Law some credit here.


It is an even bigger problem when searching for advanced/niche concepts: try searching for Redis and Cloudwatch (not Elasticache, plain Redis) and you will get generic AWS docs and "How to get started with Redis" posts.


And social media (including LinkedIn). There are many tech firms who hire marketers to write tech content for other marketers and potential clients as an advertising and brand-building strategy.


I think this problem expands to tech meetups. It is very difficult to find a quality meetup. Most people never used the tech and the presenters make gross errors. Most recent I remember was a person trying to explain why GraphQL is good for APIs, while showing code with crazy N+1s. Certainly didn't convince me.

I'm not saying everyone should be an expert, but I would want the whole spectrum of experience represented. Now I don't invest time in meetups any more.


Meetups cater almost exclusively to younger people who want to learn something and socialize.

I don't think it is particularly wrong, but more experienced people tend to be older and less likely to have inclination or time to prepare talk or go to pub every week or so.


It feels like if you changed the nouns we could be talking about movies. We are, some of us at least, on our guard when a movie has a huge advertising spend because we have been burned by movies where, "all the best parts were in the preview".

Do you think it would be possible for us to have any transparency into how hard a web page has been 'advertised' and use that to inform our decision processes? I've no idea what that would even look like.


"Now, literally everyone is trying to do SEO and use lots of words in articles, kind of creating content, but in reality copying from someone else and modifying a little and trying to get lots (of) back links."

That's the real problem. There is a market for short-form clickbait crap. One can make a living writing that. There is not much of a market for long-form accurate technical material.


Confluent's marketing content for Kafka does an amazing job of making Kafka sound like the solution for every problem. I have a hard to understanding what it can actually do because the content is stuffed with so much selling and adjectives.


“Content marketing”


"bullshit marketing"


I don't think all content marketing is bullshit. There are some companies that produce some pretty nice content, for example some of the in-depth Cloudflare stuff, but others as well.

It's useful and interesting, but also content marketing.


Digital ocean write some really good articles too.


What we used to call "spam".


To paraphrase Gary Larson, "We know it is bullshit, but what kind of bullshit?"[1]

Marketing is fact mixed with coercion.

But this is about plagiarism.

The author of the article, in just under 800 words, is addressing the "copypasta" nature of a specific discipline: programming. I like the author's characterization of lazy or necessary plagiarism as "consumer" mentality. That's an interesting twist.

Was this not the 1970's American Auto Industry attempting to implement Japan's earliest implementation of lean manufacturing? Is the same to be said of any "ripoff" product that cheaply imitates the original: e.g., an off-brand version of an Eames Lounger, or cheaply made webcam off Amazon which is a faulty copy of a Logitech?

His observation is a reflection of complex constraints, and while I completely agree individuals should strive for a deep understanding and mastery of what they spend their lives doing, as it benefits us all directly or indirectly by making us conscious citizens (my opinion), I think this is a largely metaphysical reflection lacking contextual nuance rather than a call to action: we've all been in the shoes of his hypothetical individual committing the sin of programmer consumerism, and for good reason.

However, I do appreciate the clarity his transformation applies to a scenario we are all intimately engaged in.

[1] "We know they are idiots, the question is, 'What kind of idiots?'"


Everything goes to shit when marketing is involved. Or more like, everything goes to shit when money is involved.


That's true, of course, but consider this: if there is no money, there may be nothing to go to shit; that which does not live, does not die, etc.


There was in fact content on the internet before the advertising craze. Sometimes people write things because it earnestly interests them, not to make a quick buck.


Google incentivizes this. Don’t hate the player, hate the game.


Nobody is making the player play the game. There are plenty of other ways to spend your time than advertising on the internet.

"Hate the player for choosing to play the game."


Did the poster even name a player?


Wall Street incentivizes Google to do this. Don't hate the game, hate the meta-game?


Wall Street has no say in the matter. The voting shares are majority held by the founders.


Google chose to be beholden to Wall Street. It could have chosen to remain private and had a better chance of not harming society.


You do realize it was tech bros and not marketers who invented Google SEO right?


I think it has something to do with this current culture of 'personal branding', wherein a lot of content online aimed at beginners says you should be blogging, writing articles, basically telling people how to do the thing you learnt that day on dev.to, blogs, Twitter, Medium, etc. I don't think it is necessarily bad per se, but it all seems a bit useless? I think there is good value in writing a personal blog, a log of what you've learnt coming from the perspective of a learner, rather than a teacher.


Yep. I've read a lot of medium articles that have zero actual substance and are just pharaphrasing a different article. Or, they are advocating for an objectively bad principle that the first SO result says is not optimal...


I’ve thought about this. If I had to paint a metaphor, it’s akin to a tech selfie. Hi, I was here, using X technology (holds up blog post camera, points it at self standing next to the location/celebrity). Rinse and repeat, document your travels, it’s part of the modern melancholy, the extension of the self in a variety of superficial virtual forms.

What’s the main problem with this in the tech community? We need a lot of credible content that is downright technical. It hurts our community if we let the modern condition permeate into this domain too much.


Do you have any suggestions for blogs that come from a perspective of a learner, rather than a teacher? I feel like DevLogs in the game dev corner could be an example of that.


That's pretty much what I was thinking of haha. I like watching game devlogs too.

None come immediately to mind but I've definitely come across some before on the web. Basically they kind of go "here is my problem, here's what I tried first, that didn't quite work so I tried that, but then I learnt about super_mega_amazing_tech and I wrote my code like this and it seems to work."

I find those kind of things quite interesting to at least skim through if not read in full if it's well-written.


I’ve said this for a long time:

The people actually doing the work don’t have time to talk about it and the people spending all their time talking about it aren’t doing the work.

Of course there are exceptions but I’m extremely skeptical of a lot of stuff I read.

Also that the HN bubble will always make readers feel behind when in reality 90% of the industry hasn’t even begun to catch-up. I felt behind with K8S in 2016, for example, not realizing we were just seeing the wave form when I felt like it was cresting.


> The people actually doing the work don’t have time to talk about it and the people spending all their time talking about it aren’t doing the work.

I think that's a really sad and cynical view. I assume you don't spend 16 hours a day writing code. I assume you have hobbies and other interests. For some people, educating others about their favorite topics is their hobby. Writing about their projects is their hobby.

Here are entire blogs by people who are "doing":

http://www.brendangregg.com

https://perspectives.mvdirona.com

https://netflixtechblog.com

https://www.allthingsdistributed.com

https://airbnb.io

https://engineering.fb.com

Those are just a few I can think of in one minute. If I went through my RSS feeds and bookmarks I could find more.


Obviously the people who write for fb or airbnb or netflix might well be professional tech bloggers or people in tech-leadership positions that tell other people how to do the work. Or even researchers (I see the last one appear in ms tech blogs a lot). Or it might have been heavily edited. Brendan Gregg is a professional tech author. Not a hobbyist. Mr Vogels is a CTO, far from a programmer. That's not to disrespect any of their content. In fact i think its great that companies bother with it and that we have so many tech authors willing to put in the hours it takes to come up with something sellable. Arguably the people writing such things put their companies rep on the line so should be more trusted than the average grunt programmer who is still on the implementation level. But if these are the best counterexamples we can find, then I'd say OP has a point. That's not to say coders don't write blogs, I've written a few technical blogs myself and I am very much on the implementation level. But that's not something people will actually read because it's pretty low effort and not about work stuff (every work contract has a secrecy clause these days).


> Brendan Gregg is a professional tech author.

He gets paid to write, yes, but that doesn't mean he's not also an engineer. I've worked with him, he does quite a lot of heavy engineering and then writes about it. His writing is so good sometimes he gets paid for it.

But OP said that tech blogs aren't written by implementers, and that's not at all true.


> Obviously the people who write for fb or airbnb or netflix might well be professional tech bloggers or people in tech-leadership positions that tell other people how to do the work.

Not usually. Usually the way it works is the person who wrote the code and developed the technology decides to write a blog post about it and then writes it. Then they pass it around to their peers and other leadership for comments and edits.

Then, at least at Netflix, the next step was usually to publish it yourself on the tech blog. Sometimes if it was a big new tech it might get reviewed by PR or legal but not often.

At the other tech companies I don't know what their process is after that.

But what I do know is that I know a lot of those authors personally and they are definitely implementers.


> I think that's a really sad and cynical view.

It doesn't matter if it's sad and cynical, it matters if it's true.


I believe the rest of my statement made it clear that I believe it is very untrue.


What's the point, exactly?

That there is a certain number of engineers who have a mix of talent and resources (=time), so that they can exercise software engineering and high quality technical writing?

They are an exception. Almost all the engineers I know (with one exception), who also have a regular life (roughly 40 hours engineering/week), have little time to dedicate to technical writing. As a consequence, it's not unreasonable to state that, in general and in practice, software engineering and (regular) technical writing are mutually exclusive.


I am in an odd position where I'm writing a book at the same time I'm writing a library the book uses.

It's a fascinating experience. How being a good writer and software engineer go hand in hand. If my library is not easy to understand, my book won't be succesful. I'm constantly going back to edit the library to make sure the book / related concepts can be grokked.

I feel this is a fairly general truism. Great software engineers are often technical writers. Both involve understanding what the 'reader' expects to see, needs to understand, and how the whole narrative/program fits together cohesively. I'd encourage anyone who wants to up their software engineering game to work on their writing skills first.


To be clear - I didn't mean that the two _roles_ are mutually exclusive. The opposite - I think that definitely, there are common quality required between software engineering and technical writing.

What I meant is that in real world, due to times constraints, they are. As a sibling poster commented, working as a hobby ends up being a work in itself, so doing both things ends up being, effectively, overtime.

And as a consequence, all the general considerations about overtime apply.


If those engineers are working 40 hours a week and are awake for about 110, what are they doing with their other 70 hours? Sure some of that is commuting, showering, etc., but presumably they have other activities.

For some people, their hobby is technical writing.

Saying that they are mutually exclusive would be like saying that being an engineer and doing puzzles is mutually exclusive because they both require a lot of mental effort.

Or being an engineer and a musician are mutually exclusive. It's a silly thing to assume that technical writing is somehow different from any other hobby.


Writing great blog or having pet project after working full time is equivalent of working overtime or crunch. Had this been effective, persistent overtime would be effective too.

Which is why it is not happening. The actual rest time and hobby is when you do it whenever you feel like and stop how you feel like. Once you make it project and treat it seriously, it is work.

Also, other stuff that is done after work: cooking, cleaning, shopping, picking up kids and talking with them, sport to be healthy. These amount to not exactly small chunk of time.


I assume company blogs have a process where you have approval over what you write, both before and after the article is written. To this end (more so if the author has "evangelist" in their job title) the writing is a function of their job, and not a hobby.


Function of their job or not, the point is that the people who are implementing the technology are the ones writing about it. The "doers" are also doing the writing.


The point is that many (not all, of course, so there will always be counterexamples) who are "doing" don't have the bandwidth to produce great content. If your employer pays you to do it inside of your regular work schedule, that changes the equation.


Not sure if the blogs from tech companies can really count here. Those articles are made with the company's interest in mind, typically to boost recruiting. In my experience, they are always written on company time.


Written on company time or not, those are still engineers who are doing real engineering work who are also writing about their work.


Meh, I've worked for more than one of these, and I'd say they are thinly veiled hiring or marketing material.


Sure, but again, not sure how that disproves that the doers are the ones writing about the tech.


I would actually really like it if you would share some more high quality tech blogs!



> The people actually doing the work don’t have time to talk about it and the people spending all their time talking about it aren’t doing the work.

Not only this, but the most accurate business advice tends to be too boring to attract views and clicks anyway.

Link-sharing sites favor controversial opinions and stances that make the reader feel superior to their peers, so that's what the content producers deliver.


>>The people actually doing the work don’t have time to talk about it and the people spending all their time talking about it aren’t doing the work.

This is one of the most poisonous attitudes I have ever seen when it comes to tech content, and unfortunately it is really prevalent in the largest tech companies.

No wonder nearly all the documentation created by the tech giants is complete garbage and often out of date, with almost zero regard for people who actually read the documentation.


> No wonder nearly all the documentation created by the tech giants is complete garbage and often out of date, with almost zero regard for people who actually read the documentation.

A natural consequence of documentation being a "good beginner task" in open source or being assigned to whoever cannot get out of it on the project team.


This might be true for some, but certainly not all.

There are plenty talented, productive people also writing articles and giving talks. Hell, most of what I watch/read (not just skim) is content either from the main drivers of a given tech or people who are experts.

It isn’t that hard to differentiate.


I suspect those on the other hand might not have much of a life outside tech.


This is definitely true - I have been told by many respected people over the years that I should start a blog since I have a lot of interesting thoughts on subjects, but a lot of the issue to me is that I have a tendency to want to shape the tech the way I want for a blog, which leads to endless bikeshedding, and it's not as rewarding for me for the effort compared to doing more higher value things for work such as creating unplanned projects to solve work pains, planning other projects, figuring out new solutions to problems encountered at work, or mentoring other developers.

I have a tendency to drop my nuggets of wisdom/analysis in chatrooms in Discord and Slack (and IRC prior) and let others adopt/evangelize them on their own if it makes sense for them to. I'm ok being in the background while my true value is appreciated by those who matter for my own career.


Disagree. When I do work, I’m super excited and can’t help but want to share. I know lots of people that have a similar outlook to work that brings them joy. It lights you up and you want others to share in that light.

Paradoxically when NOT doing work I share less


Thumbs up for this. It is just a physical limitation of time, if you're writing you're not coding. I love when Aaron Patterson writes a post once in a blue moon, because they are so interesting.


> if you're writing you're not coding

Do you code 16 hours every day? Or do you do other things with your time in addition to coding? It's possible to spend your "free time" writing about coding instead of writing code. Humans can do both well if they choose to.


I don't work 16 hours a day. Writing good content is a lot of effort, especially after 8 hours of coding. If you're churning out a post a week I would say that is already a lot.


> I don't work 16 hours a day.

Exactly. You probably spend at least some time on a hobby. For some people their hobby is technical writing.


Yes, sure there are good devs who write good content. But what I'm saying is that if you spend most of your time writing, you definitely don't have the same experience as someone who's mostly doing work with code.


In the last couple years I worked on migrating some teams from CVS to Git. That is the reality of a lot of projects in the industry.


I know many people who do great work and talk about it. The work is hard and getting to speak about it at a conference or write a well-received blog post is their preferred kind of reward.


>> The people actually doing the work don’t have time to talk about it and the people spending all their time talking about it aren’t doing the work.

I can't really agree with this. I think it's worth noting that writing about something you have just learned is a really good way to solidify that knowledge, especially if you are able to get feedback from others. So a lot of people deliberately set aside the time to do it, even if it comes at the expense of greater levels of productivity.


I wouldn't want to read a tutorial by someone who has just learned it. I want a tutorial by someone who has ample experience.

How would you feel if I write a cookbook the first time my bread rolls didn't catch fire? ... to solicit feedback?


Somewhat related:

I think this depends on what you're learning and how you've learned how to learn. As a beginner, I don't have any business going right to the master to ask about how I can improve my skills, so that I can "level up" and get the best results right away. Then again, we Western folk like pills and magic solutions for everything. We want results now, now, now.

If you're a white belt, go chat with a yellow or orange belt. If you're a blue belt, go chat with the purple belt. You don't walk up to a black belt and ask about the best way to tie your belt. No, you go ask the other white belts who have been at it for a little longer than you have, the people who have a couple of stripes on their belt. These people are closer to where you are in the given moment. They were in your shoes not too long ago, so they can help translate your mistakes, and help make sense of what you're thinking, asking, or learning.

When you see a really great photograph that touches you in ways you cannot describe, you're not seeing the product of an expensive camera, or a filter, you're seeing the result of someone who has taken hundreds of thousands of really shitty photographs over the course of their lifetime. You're seeing the results of maybe decades of practice. If this person writes a tutorial about taking photographs, can you learn from it? Sure. But they're not going to make you a better photographer by osmosis, you've got to go take a lot of pictures and read the beginners tutorials along the way.

So yeah, if I've been burning my bread rolls for months, I'd love to know that one thing you did to not set the house on fire every time you put rolls in the oven.


I believe there is a categorical difference between skills operating on a continuum and those operating in a binary fashion.

Pretty much all motor skills like like Karate can be performed okay, good, better, really good, etc. Similarly, I can take gradual baby steps from being a bad photographer towards becoming okay and then good.

But for most programming things, it either works correctly, or it doesn't. There's very little middle ground in an algorithm. Either it works to solve your problem, or it doesn't. Accordingly, I don't believe I can learn much from someone else's broken example in the way that I could learn from a (mediocre but slightly better than me) photographer.


This is not true. The code can be flawless, slightly buggy, maintennable with some effort, hardly maintennable or unfixable. And then there are personal preferences and opinions about what is good code.

The algorithm can be slow, slightly faster, fast.

The intro into framework can be in the middle too.


But within context of a tutorial, anything less than flawless is not worthy of inclusion (making it binary in this case). IMO, any content aimed for beginners should be flawless.

Beyond introductory material, it's a trade off of complexity and time as it's hard to compress the factors needed to demonstrate anything technical.


It depends on what the thing is you've just learned and your background. For example, this week I worked a bit on an article on the working with the Go "analysis" package for running and writing your own static analysis tools (not yet finished). I "just learned" this 2 weeks ago and wrote a few things in it.

I think it's useful to share my experience on this: there isn't a whole lot of content on it and I think people could benefit from it. It's also helpful for myself, because writing it down clearly means I understand it better too now.

My background here is that I've been programming in Go for over 4 years and have worked with the Go ast package before (though not the analysis framework). I'm hardly a renowned expert on it, but I'd like to think that I have enough background/experience to know what I'm doing and communicate that information others.


It totally depends on the tutorial and the way it is written. I have personally learned a lot from "hey everyone, I just learned this neat thing and wanted to share!" type articles on the Internet, where the author discloses their level of experience upfront so you can have the appropriate expectations.


Sure, I also like those inspirational hints.

But the category of articles that I was criticizing here is when unemployed students pretend to be the authority on topic X to improve their chances of getting hired. Those articles typically do not disclose the lack of experience of the other. Quite the contrary, some of them even make up achievements and/or credentials.


This is absolutely true, and it's fascinating to see the strength of visceral reaction against it.


I basically realized this when I was at an internship talking to a buddy about a compilers course I could be taking and his language he was making for fun. He was talking about a couple topics I'd probably go over in the course.

Then a more senior coworker came over to join the convo and mentioned a few similar words that were clearly jargon related to compilers etc. He spoke with such confidence that I didn't want to admit I didn't know about them, but figured I shouldn't be ashamed at not knowing stuff. I asked him what it meant and he said he didn't really know and wasn't entirely sure. ¯\_(ツ)_/¯


I once mentioned off-hand that I was a SIGPLAN member so that I could get the proceedings and learn about future tech in compilers and JITs and GC.

One person did a double-take, looked at me, and said, "You can understand those?" I knew exactly what he meant, and consoled him by saying "only about 2/3rds," at which point all of the tension drained out of his shoulders. I had communicated that yes, some of it is just bullshit not fit for consumption, and that he was not an idiot.

As a Feynman dilettante, if you can't have a human conversation about a subject (note: conversation, not 'curing cancer'/winning the Nobel) then you don't really know the subject. Or perhaps more generously: It doesn't matter if you know it because you can't pass that knowledge on. You are dead end as far as human progress is concerned.

I suspect Tech people feel this more than pure researchers, because we know that in a couple years we will be focusing on something else, and 5 years at most we will be gone. If we haven't passed on our knowledge, then there will be consequences that are readily apparent. In academia you get so many opportunities to connect and if you connect with 5 people, you probably feel like your work is done, and you forget about people like me who regret ever encountering certain teachers because they set me back or in one case, put me off a course I believed I would stay to the end.

Me, I have 10-15 people not of my choosing and I have to connect with 2 and 1/2 of them. It's a tempest in a teapot.


I've noticed that "I have no idea" as an answer is one of the boldest statements you can make in the workplace.

Most people are playing fake it till you make it most of the time (until shit hits the fan, then incompetence becomes dangerous and you get to see who's been swimming naked)


You and your senior coworker are allowed to not know things, and furthermore, allowed to talk about things that you don't know much about.

Was your role or the senior person's role related to compilers? You don't have to authoritatively know something to talk about it, and I never assume anyone knows anything authoritatively if they talk about it nonchalantly.


> At the beginning of my career, I would never, ever, post anything technical on the internet. I thought that if someone was brave enough to post a blog post or take part in a tech discussion, they always know what they are doing. I couldn't be more wrong!

So true.

I think this is just personality trait of people who are over-confident. I started out profesionally at roughly the same time as another dev in a non tech company. Pretty much the only devs in the company.

Technically, I was more skilled and had more engineering mindset. Both of us were savvy on biz side.

However, I was more reserved and less cowboy solutions than him. He was a nice guy and a friend but the difference in personalities were stark when it came to technical things. (This was a mature, real business who previously had outsourced the only dev system they used(ERP)).

He jumped so quickly from doing technical to just talking technical and his career climbed. All the while, I'm wondering how the heck can he take that position when he doesn't know shit about the tech. Turns out if you drift towards management, nobody gives a shit if what you're talking about is a good idea or feasible - the people above you in non-tech companies generally know less than shit.

Now an engineering manager at Bezos company.


I hate to diagnose over the internet, but it is possible you have engineer’s blindness. This usually only happens to technically excellent developers.

When an developer lacks some productivity, political, or teamwork skill, they sometimes simply don’t know that they are missing that skill (or they think it is a worthless skill), and can’t understand why someone else gets promoted over them.

In this case, you could ask the other dev, because if he has a skill that you are lacking, he should be able to recognise your lack of that skill. This sounds a bit Dunning-Kruger but it usually isn’t. The issue is more about deliberate blindness (e.g. considering technical skills are king and politics as valueless), and usually a wilful disdain for recognising the hidden skills of others (“how did that idiot get that promotion” - maybe that idiot has some skill you struggle to recognise?)

If you think you might have engineers blindness, and are in a big enough organisation then:

1. try to look at “successful” idiot/wanker/useless engineers and see what things they are good at. Try to look at those you might disdain (sales/marketing/exec) and try to see where their value comes from. If someone can get their mind to be non-judgemental about others and be interested in the unobvious skills of others, they learn a lot (in my experience).

2. Look at what holds back other engineers, and look within yourself to see if you have any similar pattern.

Disclaimer: I would definitely call myself an engineer type. The above took me decades for me to recognise, and I still can’t do politics (but I now recognise the value, and I am learning to see when someone is good at it). And it is quite possible none of this applies to you: I am likely to be misreading you completely.


Well, it could be. However, a family member who had years earlier excelled in a (non software) technical field before jumping to management positions then founder had given advise. Become excellent at $skills then move up. Good advise. Advise i'd pass on with the caveat that talking tech is so f*kin easy at 10,000 feet, be prepared to see less able people jump upwards before they're anywhere near ready.

edit: this was ~10 years ago at this stage. I've stayed hands-on technical by choice(in various roles) while the other jumped to "pseudo-leadership (incl. Thought Leadership©").

edit edit: By no means was he an idiot. Just cavalier.


Sorry, I didn’t intend for my comment to advise moving “up” into management.

It is about maintaining an open mind. How can you tell the difference between someone who has valuable 3_048 metre advice versus someone who has highly negative value at 3km?

I have remained in a developers rôle for my working life so far.

I wish I could find the anecdote where this guy recognised that this one woman was always on successful projects within a business. He didn’t know what she did, but he recognised that if she was involved then somehow the project was successful (I think surprising him because many software projects fail). I wonder why he didn’t ask her what her secret was? At least he was open minded enough to see she had some magic, even if he couldn’t directly learn her presumed skill.

Thanks for reply - I’m still working on my own blindnesses - I can say trying to be non-judgemental and looking for hidden skills in others has really helped me.


Here it is, from peopleware:

> I was teaching an in-house design course some years ago, when one of the upper managers buttonholed me to request that I assess some of the people in the course (his project staff). He was particularly curious about one woman. It was obvious he had his doubts about her: “I don’t quite see what she adds to a project; she’s not a great developer or tester or much of anything.” With a little investi- gation, I turned up this intriguing fact: During her 12 years at the company, the woman in question had never worked on a project that had been anything other than a huge success. It wasn’t obvious what she was adding, but projects always succeeded when she was around. After watching her in class for a week and talk- ing to some of her co-workers, I came to the conclusion that she was a superb catalyst. Teams naturally jelled better when she was there. She helped people communicate with each other and get along. Projects were more fun when she was part of them. When I tried to explain this idea to the manager, I struck out. He just didn’t recognize the role of catalyst as essential to a project.

---------

I don't think engineers blindness is the cause in the majority of cases, and that woman would be put on a PIP.

To get ahead things like unethical behavior, lying and corruption matter far more than competence, teamwork and making real contributions. A lot of people simply can't stand to admit this.


> To get ahead things like unethical behavior, lying and corruption matter far more than competence, teamwork and making real contributions. A lot of people simply can't stand to admit this.

I am a cofounder of a successful small bootstrapped business where competence, teamwork and making real contributions absolutely matter. I suspect those positive traits matter for ycombinator startups too.

I must admit I have never worked for a large corporation, where perhaps unethical behavior, lying and corruption are effective. However I have seen many founders fail trying to use those negative traits.

Thank you for recalling the Peopleware reference: great book!


Yes, once the corporation gets large enough it becomes almost purely political.


I wonder if you know how he fared at Bezos company afterwards; presumably “the people above you in non-tech companies generally know less than shit” doesn’t apply there


Still there and I wouldn't be so sure. Fake it until you're high enough in an org then jump sideways to another gig(which is what he did).


At amazon a lot of the "engineering" managers are so incompetent they can't write for loops.


Counter-argument: coming up with your own, carefully considered solutions to every technical challenge is absurdly time-consuming. The reason we can build such complicated applications in such a small amount of time is partly because we're relying on other people to make default, sensible tradeoffs - a framework supporting a particular type of SQL database, or NoSQL, or PHP or Django or whatever it might be. The mental effort of analysing all the tradeoffs of doing something one particular way (with such a wide range of possible options) for every little decision rapidly gets overwhelming. Of course it's worth doing a bit of research (which often ends up being "read someone else's blog" for bigger decisions, but unless you're willing to spend 2 months building a prototype application in each of Ruby, Django, PHP, and whatever other fun new JS framework du jour there is, it's perfectly valid to go for the path of least resistance and hope it doesn't cause you too many problems in the long run.


> Counter-argument: coming up with your own, carefully considered solutions to every technical challenge is absurdly time-consuming.

You should really understand the problem you're trying to solve. Once you understand the problem, evaluating a solution is not so hard.

And implementing a solution without understanding it is negligence that will bite you in prod sooner or later.

https://blog.nelhage.com/post/computers-can-be-understood/


There just isn’t time for what I think you are saying. Analysis is a cost itself. Shortcuts have to be taken to get anything done. Judgment is required to navigate those shortcuts. Some might be unknown unknowns.


I don't think people realize how much hyper-focused tech content is out there these days. I work in developer relations (at Firebase) so I see a lot more of it than an average person.

There are entire channels devoted to making YouTube videos that show you how to solve a very specific error message for a certain combination of Framework X and Library Y.

This content is obviously great for SEO but the people making it often record it 30 seconds after finding the solution themselves and because it's video it can't be maintained, it just rots.

Often I'll get to work in the morning and see 5 new GitHub issues where people are making the same hyper-specific mistake. Why? They are all misled by the same new blog post or video.

That said, I love how passionate developers are about teaching each other. No other industry shares knowledge as rapidly, excitedly, and broadly as we do. Even if there's a lot of bullshit, I find the whole scene very energizing.


I agree with the problem presented by the author, but not necessarily with the solution.

If blind acquiescence to random blogs and forums is a sin, then so is blind acquiescence to one's own limited experience. Most categories of software problems have already been solved. Being a "creator," in the truest sense of the word, is therefore rare. Most of the time, when we endeavor to "create" instead of "consume," we are just reinventing the wheel. That's often a good use of time, but it can also lead to bad code.

Instead of abandoning "consumerism," I try to challenge others to refer to prior art. It is only by filtering through books, documentation, and yes, random tech blogs, that we can get a sense of how much of what we're doing truly needs to be "created."


I would say author meant not "create from scratch" as in "reinvent the wheel", more like be a creator who is making conscious choices. You can still be a creator by making a remix using samples created by other people. Difference is that you just don't blindly copy-paste with a bit of tweaking so it "fits", but to know what you do.


That's a reasonable conclusion. If that was the author's intent, I think it would have been helpful to have described that further. In particular, I've noticed (anecdotally) that many early-career devs tend towards trying to code their way out of problems like it's a test or challenge.


I believe this all started with the advise to write blogs and books to market yourself as an authority.

As a result, nowadays, most blog posts are written by people who are seeking a job in that area, not by people who have experience working in that area.

I mean I'm sure that I would have experience about different topics. But I rarely have the time to write about it. Customers and their projects keep getting in the way.

So if someone has time to write one 2000 word blog post every 2 days, ask yourself: Why does that person have so much time for writing? Aren't they working?


Ok, it might be true that a lot of inexperienced people are writing blogs now as a way to build a personal brand. But your reaction is an over-reaction. There are also lots of incredible experts writing, and writing its self is an incredibly rewarding and educational activity. It's not a waste of time, no matter how busy you are.


Of course, there are also articles written by experts. But those experts will be busy and, thus, publish on a slow schedule. So I believe my heuristic is accurate that anyone posting content too quickly will most likely not do much actual work.

Also, if the internet is 95% articles by job seekers, then I'm better off distrusting everyone instead of expanding the trust that only 5% deserve to the other 95%.


>Also, if the internet is 95% articles by job seekers, then I'm better off distrusting everyone instead of expanding the trust that only 5% deserve to the other 95%.

I guess if better off means not finding anything good but no crap either, instead of only finding some good and lots of crap.


Well, I deliberately chose the word "distrusting" here.

If I know that the internet is 95% crap, I will treat every article as wrong until proven correct, meaning that I will not copy & paste anything without verifying myself that it works as it should.

If I had a provably reliable author, on the other hand, I could skip that work and just take his/her word for it. But only about 5% of the people writing on the internet deserve this level of trust.


I know half a dozen students who have published "Intro to React" tutorials. They themselves know they are crap, but also know that recruiters will be impressed by the publishing without reading it.


While that's absolutely true that doesn't sound like a real problem. (It won't throw off Google and the problems with recruitment were already pretty bad.)


From personal experience, including reading a lot of HN, I think programmers as a species are especially biased towards putting forth opinions in the hopes of being validated for our experience or intelligence, even when we know we don't know much about the subject. The fact that IANAL (I Am Not A Lawyer) [but...] is a common enough statement in these circles to deserve its own acronym is telling. We often throw out unchecked opinions in hopes they may be right, because that would feel really good, and just let others tell us if they're wrong. When those opinions take the form of a blog post, rebuttal often doesn't exist in the same place as the content, making it seem more authoritative than it often deserves to be.


I don't think that's true of most people. People use IANAL defensively in an attempt to avoid embarrassment from being shown to be wrong in an ensuing discussion as opposed to a "free to present my opinion without scrutiny" statement. Most scientists have this too amongst a group of their peers (in conferences for example), they offer a lot of caveats in contributing to discussions that even though are primarily their realm of expertise, they may be out of their depth in the room.

If seeking validation is the prime motivation to contribute to a discussion, at the very least I think HN is the least guilty of this amongst most forums.


I am not a sociologist, but I think it's not only programmers. A lot of my FB friends suddenly became COVID-19 experts, or experts on US police violence (or lack of thereof).

In programming, at least the code needs to work. Maybe it is a bad pattern or anything - but the barrier of entry is non-trivial. For anything else (e.g. politics), a lot of people have opinions, with their strength being not much correlated with their knowledge of the subject.


The main thing I learned with covid-19 is that you can put too much faith in science/experts. Or put another way, we should not forget to apply skepticism to science just because the situation seems "urgent". And people should not be browbeaten for expressing skepticism of hot-off-the-press science. Science will arrive at the truth, but it takes much more time and rigor than people generally acknowledge.

Looking back, it seems Feburary/March/April covid-19 experts' expertise had the same (or worse) predictive power as random programmers on HN.


> I am not a sociologist, but...

Please tell me you did this on purpose.


IANAS!


Everyone was an expert online as far back as 20 years ago. Now look where we find ourselves. Time isn’t a flat circle; it’s a merry go round.

https://www.nytimes.com/2000/02/03/technology/suddenly-every...

https://web.archive.org/web/20181018000000/https://www.nytim...


When I first came across reddit (14 years ago?), it was almost a website for functional programming enthusiasts. Haskell was all the hype over there the way that rust seems to be all the hype over here. It felt more like a community of grad students with pseudo-academic blog posts hyping the latest ideas and research. At least that's how i remember it.

There was also a strong politics subreddit full of group-think but that wasn't what most people went there for I'd say. It was one of three subreddits if i recall.

The site definitely changed when users could create their own subreddits as that opened the board to just about every kind of person or group on the internet.

I believe sites would do best to specialize even at the cost of growth. I'm happy when hackernews sticks mostly to tech and doesn't silo us into specialized and moderated subreddits.


I joined HN during one of the earlyish Eternal Septembers. I seem to remember reading that there was an active campaign to flood the front page with posts about Erlang to deter the influx of dilution. That's what actually got me interested beyond it just being attached to an investment company.


It's not just programmers. It's social activity on the web today. And to stand out, you need to say something edgier or something contrary to popular opinion.

We're also all driven to correct the things we see that aren't quite right.

This comment has been a little of column A and a little of column B.


The Letters to the Editor section of newspapers may be a useful example of aspects of this opinion-expressing behavior over time. At least in the US, we are taught that we have an obligation to participate in the public discourse.


To be fair, IANAL is common across the entire know-it-all internet, which is basically everyone who can read at a college level and plenty who can't.


I've never seen it outside of HN personally


It's ancient. It was being used on Usenet in the 90s.

It's a standard disclaimer because giving legal advice without being licensed to practice law is a crime in many jurisdictions.


It has a Wikipedia article: https://en.wikipedia.org/wiki/IANAL


IAAL, who also frequents many Magic: The Gathering subreddits, and it is used all the time there. Same with the home-repair subs I lurk on. It is ubiquitous shorthand.


I would imagine there's some cultural overlap between HN, Usenet, and subreddits about Magic and technical subjects



I thought the IANAL thing was because people didn't want to get dragged into a potential court case, or (wrongly)* thought giving any form of legal advice as a non lawyer was illegal.

So less about being validated for our experience, more about trying to avoid being dragged into court/relied on for evidence in a future court case.


I’m not a psychologist but...

No, in all seriousness I think this is one true factor. But I feel like this isn’t a bad thing on its own. The issue arises when authors don’t disclose their knowledge or competence. Saying stuff like: this is what I assume, this us what I don’t know etc. or just posing plain questions.


Right, but nobody's going to say any of those in a blog post. If you're going to the trouble to write a blog post you're probably making a statement. Even if it's ill-informed.

There's another dimension to this too, which is that writing blog posts and coming off as knowledgeable can directly translate into career opportunities. As long as you aren't too wrong, there's a material incentive to putting stuff out there.


But wouldn’t you trust someone who writes more critically and honest more then?

There is certainly value in that, also from a self-promotional perspective.


I think there’s a huge population of people who prefer reading things that sound good rather than things that are true. So, if you have the ability to make a product sound good you might be able to provide more value to a company than a person who can write about the technical merits of the product. Engineers can see through the marketing BS but they’re not always the target customer.

Also have you seen a job posting for an entry level software engineering position? You have to say you’re knowledgeable about everything on the application or you will get filtered out in the first round. Publishing blog posts is the easiest way to come across as knowledgeable about a new tech.


I dunno. I'm pretty technical, in a data sciencey kind of way, and a lot of my career success has been explaining things relatively simply and accurately.

The combination of the two facets is much more useful than either alone.


I don't know, talking about what is allowed and what isn't is pretty normal in most circles.

I think IANAL is a popular term on HN because HN originated in a country with a terribly litigious culture, and because HN is primarily populated by people who can at least afford lawyers.

If I'd "talk to a lawyer" as often as HN comments recommend people do then I'd have no money (or time) left to eat. The whole thing is about covering your ass.


Speaking from my experience, I write about my opinions not for validation, but because you must write about your opinions to be seen as a "real" programmer. People who quietly do their work and create things generally do not flourish. You must sell yourself and your ideas.

I suppose that is validation in a way, but not to feed my ego.


I personally love discussions where I can throw out opinions, and get shot down without too much fuss when appropriate. I find that throwing opinions out helps discussion. This only works if people qualify their opinion, and there's an opportunity to actually shoot things down.


It depends on the forum and the context.

In some places, throwing out opinions to stimulate discussion is perfectly reasonable. In others, it's simply noise and misinformation.


I would say this is not unique to programmers, because i did it before i became a programmer. But then, i did eventually become a programmer, so maybe it is.


"Those who can't do, teach". While I think this is usually a pretty offensive statement, I think it is an apt one in the world of tech blogs. The people who really know what they are doing are not writing blogs. That's why the content that the Netflix team releases really sticks out. If only they broke their 1h-long presentations into 500 word tech blogs.


Those who are doing, also teach, but are constrained in their audience and time with which they can disseminate their know-how by employment contracts.

This is a feature; not a bug given the way our quasi-free-market founded on protection of trade secrets over actual marketwide innovation that lifts everyone else.

I try guiding anyone who'll listen how to do things I'm well versed in; but there is only so much one can do in a day.


I disliked a lot of this article, as "there is bullshit everywhere" seems like something that should just be an axiom at this point.

However, I will expand on a specific pattern of bullshit that is common in the tech world: over-complication for the sake of some sort of "theoretical purity". I think Redux is a good example of this. I think Redux can be used well, but it became the "recommended way to do global state in React" and IMO way many more code bases have become an incomprehensible nightmare because of Redux than have been helped by it.

Similarly, and I'm probably dating myself, but anyone remember the original Enterprise Java Bean specs, and the laughably bad "Pet Store" demo app from the early 00s? It was as if you took a collection of "architects" with no real world experience, and certainly no regard for performance, and had them create the most elaborate Rube Goldberg machine possible.


Ironically, Dan and I have spent more time trying to convince people to _not_ use Redux all the time than we have trying to actually market it :( [0] [1]

We specifically have info in our docs on when it actually makes sense to use Redux [2] [3], but that doesn't change the flood of Medium blog posts out there.

I created the Redux Style Guide docs page [4] to try to give some clarification on our actual current recommended patterns and usage practices, and our Redux Toolkit package to simplify common Redux use cases [5]. Unfortunately, there's only so much we can do - a lot of people never even look at the actual docs.

[0] https://medium.com/@dan_abramov/you-might-not-need-redux-be4...

[1] https://blog.isquaredsoftware.com/2017/05/idiomatic-redux-ta...

[2] https://redux.js.org/introduction/getting-started#should-you...

[3] https://redux.js.org/faq/general#when-should-i-use-redux

[4] https://redux.js.org/style-guide/style-guide

[5] https://redux-toolkit.js.org


Just like to chime in and say I'm really appreciative of these efforts. I get devs at my firm who are learning to do web dev for the first time and ask why we're not using Redux by default. I link them to Dan's article and the Redux FAQ as part of my explanation that Redux is a life-saver when you need it and aggressive overengineering when you don't.


Thanks :) I also should have linked my post "Redux - Not Dead Yet!" [0], which talks about how Redux compares to other tools like context, useReducer, and GraphQL, when it makes sense to use those, and reasons why Redux is still useful depending on what you're actually trying to do.

[0] https://blog.isquaredsoftware.com/2018/03/redux-not-dead-yet...


What’s more, I think the incentives are not aligned. People who write content nowadays don’t usually have the reader in mind, but instead focus on promoting something (a tech, a tool, or their personal brand): https://angryscript.home.blog/2020/05/08/in-2020-all-content...


>...personal brand... This. Unfortunately it appears that these days if you want to get ahead in your career is to publish content and develop that "personal brand".


If it creates new opportunities why not?

Of course your work can speak for itself, but who can hear it? Advertising through technical writing seems to be a very good thing as long as its valuable and honest. Because if it isn’t we filter it out.


I agree with every argument she made and I think following her advice is great for every developer. But I would like to add a small caveat that I think doesn’t detract from the good advice.

Some of the reasons she mentioned are legitimate (meaning, they are good reasons to follow random blog posts and stack overflow answers), like having no time, or it is comfortable. Some are not exactly good reasons, but happens often since we are humans (we are lazy, we don’t believe in our selves).

I also would like to add one more legitimate reason: it is not that important. Like it is an edge case, a temporary code, a piece of software where the highest performance isn’t necessary.

I think it is important to maintain an attitude of always having a critical mind while reading tech content. And understanding her point that something being published does not mean that something is right. But, once that’s your default attitude, it is ok to accept that, sometimes, you can critically conclude that it’s ok to just follow that tutorial and copy that code without much thought.

If that is challenged in the future, it is also ok to answer that you did just because you copied someone on the internet. As along as you accept that this is not a strong reason, and recognize that it might have been a misjudgment on your part.


I am in the process of preparing a video class on Core Bluetooth (the native Apple framework).

I thought that I knew it all pretty well, but I found plenty of places that I needed to recalibrate, as I reviewed my materials.

I am now a great deal more confident in my grasp of the technology; thanks to my class.

I do a lot of writing, cast as a "teaching" exercise; even though no one cares. Doing this helps me to understand the material much more comprehensively.

When I teach, I then have a Responsibility. It is even more important to know the material than if I am developing a shipping application.

Speaking of "shipping"...

I write every line of code as "ship quality" code; even if I never have any intentions of shipping it (like test harnesses). That also helps me to make sure that I know what I'm doing. I heavily document my code, because explaining the code is like a built-in "self-peer-review." It helps me to see the code through fresh eyes.

I also write about my personal processes and approach to engineering, as that helps me to focus and make sure that I am speaking from a position of knowledge and experience.

I don't claim expertise I don't have, but I am constantly trying stuff I don't know how to do (I write about that here: https://medium.com/chrismarshallny/thats-not-what-ships-are-...). That's how I learn new stuff.

"The most erroneous stories are those we think we know best -and therefore never scrutinize or question." -Stephen Jay Gould


Oh, there's so much to unpack here...

Vast majority of my blogposts that have reached HN front page were ... inflamatory and controversial. The (IMO) wise content that isn't steering up the argument seems rather ignored.

... or it was about Rust. I love Rust, I really do, but I feel some of the things I wrote weren't really thaaaat worthwile, and it's just jumping on Rust bandwagon. SWE is mostly driven by fashion and trends, and not by merits.

I have a lot that I wish to share, but don't have to write it down in well-structured way.

The more you know, the more you realize the that right answer to everything is "it depends". And it's really hard to turn subtle context-dependent knowledge to something more universal that benefits broader reader. It's good to seek after most knowledgeable and skilled people you can find at your job and pick their minds whenever possible asking about opinions, experiences, and so on. The context is already there.

And in SWE as in anything complex it's just hard to verify any theory. Nothing is reproducible, really comparable. What worked for me don't have to work for you, and we don't even know why. Everyone, even if well informed and experienced, has just a fraction of the picture and is trying to deduce the whole as best as they can.

Then there's a whole thing that ... people in SWE aren't as smart and knowledgeable as they often think they are. Being Senior Software Engineer doesn't mean anything anymore. Oh, you did two bigger projects, and you think you know a lot, hmm? Even after a lifetime of practicing the craft, keeping up with the tech, languages, tools ... there's still so much to learn. And a big part of SWE is not the tech itself but psychology, management, business, social skills... .

My advice for people that are looking for great content ... "you have to dig through a lot of dirt to find a couple of gold nuggets", and "weird&niche" is efficient way to get familiar with new stuff: You're not going to learn a lot of if you only travel the mainstream paths. Learn Haskell, Forth, Lisp, write some side-projects using some really weird and niche tech just to get familiar with it and gain some new perspectives. You'll talk with people who have some interesting opinions and learn things that will be surprisingly useful even on the mainstream path.


My two cents many people can't think individually any more. Tech has become complex some people can only justify a decision based on what other people did. Honestly the solution is a combination of the scientific method, hacker mindset and being prepared to RTFM. No tech content is worth its character count it is just one persons perspective, their biases and mistakes. However reading code is another story, that tells a story I don't think you need to write content if you code. A project on GitHub is worth more than 1000 words.


I think at least part of the reason tech has become complex is because so many tech stacks today are a briar patch of 3rd party libraries and components that no one person can understand. The 'Don't reinvent the wheel' rule of thumb has practically become a mantra, and enables this. Newer developers who grow up in the online community are so afraid to think for themselves, lest they get mortified to death for doing something dumb. So it's sort of a self-perpetuating complexity problem.


A lot depends on the programming language used in the online tech materials. It's very hard to find anything worthy in Python or JS, because for many people it's their first language, and "teachers" are only one lesson ahead of their "students".

On the other hand reading something explained in OCaml, Scheme, Erlang, Julia, D or similar niche and not hyped language can be of very high quality. C also tends to be good. Interestingly, C++ is also slowly becoming a niche high-quality language recently.


This is just flat out false. You're showing your (lack of) age here.

The nature of niche languages is people who like them run to the next niche when the next niche springs from the aether. And when their blogs and youtube channnels die, so will they wither on the vine.

There has always been higher quality documentation for Python things than most languages, because as a community, Python encourages quality documentation by providing tools to help developers write it more efficiently. There are quite literally entire platforms that teach a complete beginner who has never written a line of code how to write javascript, for free.

There's a difference in having good documentation, and someone reading the documentation to you. Sounds like you're equating the latter with the former.

You realize C++ has been around since 1979, right?


Okay old man, show me your age and knowledge: do you know about Oleg Kiselyov and his amazing articles? See here: http://okmij.org/ftp/


It's not my age and knowledge, it has been this way since before I was born in the case of the derivatives of C.

https://en.wikipedia.org/wiki/Programming_languages_used_in_...

The most ubiquitous languages used in the most highly trafficked websites in the world are Javascript (1995), PHP (1995), Python (1990), C++ (1979), and Java (1994).

No, I do not keep up with individuals' blogs and articles. I am very familiar with the O'Reilly books mentioned by one of their authors in another comment in this thread, however. And it's a universally accepted truth at this point that Stackoverflow and blogs are poor replacements for them.


Your argument is weak. Popularity of a language does not correlate well with the average knowledge of the users of the language.

OCaml and Scheme are both very old languages. The original dialect of OCaml (Robin Milner's ML) was created in 1973. Scheme was also created around the same time in the 1970s, and Lisp even earlier, so the technology I refer to is hardly a novelty from aether. Rather, the opposite is true, they are all older than Python, JS, and the derivatives of C.

People using these less popular languages are not blogging/posting a lot, spending more time writing code. Nevertheless, most online discussion is high-quality with high signal-to-noise ratio, much easier to learn new things, find good code and smart people.


Actually both ML and Scheme were at first implemented in Lisp.


Yeah


"Your solutions are not any worse than the ones on the internet."

Sorry, I just don't agree with this. Of course you need to vet the solutions you find online, but chances are you will find solutions that have already worked through bugs and edge cases you would only learn the hard way if you went forward naively.


This is sadly too true.

I have seen new libraries becoming popular not because they solved their target problem better in a measurable way than the existing ones, but because they used [insert fancy tech that is hype right now].

I have seen articles reposted in tech newsletters that were completely bullshit. The last one was about manually cleaning up some weak references because that would magically help performances, without any data to back that up.

Performances in general is HARD. There are very few general truths that hold true and many rules of thumb that change rapidly as mobile platforms evolve. Most of the performance optimizations I used to make 5 years ago just don't matter anymore. Measuring the bottlenecks is not that hard but still very rarely made, even in performance articles.


Yes.

On one side there are blogs that just post content to keep momentum, say csstricks.com, and don’t care to fix their errors even after you report them.

On the other side there are absolute noobs that post unresearched content just because some VIP tweeted that you don’t need to be an expert to blog.

Well, that’s what you get: Bullshit everywhere.

Then of course you get awful StackOverflow “top” solutions that are straight up “worst practice”


>> Believe in yourself. Your solutions are not any worse than the ones on the internet.

This needs to be clarified. If taken literally then people will never improve and Joe average will continue to post bullshit on the internet.

Most solutions are probably comparable to much of what is on the internet, but that doesnt make it ok. We need to filter what we see on the internet. If you learn a new concept that's good, and maybe it's what you need. The key is to keep trying to do better while looking out for fads.

I've seen a lot of change over the years regarding big new paradigms. Some I tried, some I tried and passed on (Java) only to see them fade. Maybe I'm ready to start a blog ;-)


This is true for all types of content - the art is to develop a sense of smell for quality content. And to do that you have to first have been exposed to a lot of bullshit.


Filtering out Medium, HackerNoon and possibly FreeCodeCamp sounds like a good first step.


> Adapt solutions to your particular use case. There's no one-size-fits-all solution for everything. Compare different approaches, analyze them. Tutorials or articles show an idea, but may not present production-ready code. Always analyze it before you decide to use it.

This advice seems weird to me. I've been a professional software developer for a decade, and probably 95% of the time it doesn't matter if you're doing things in the most ideal way. The important thing is that it works, is reasonably performant, and is reasonably maintainable. If you can get that in 20 minutes from stealing somebody else's solution, it's probably better in the long run than spending 4 hours figuring out a slightly better solution. Maybe the hard part is identifying the 5% of the time when it does matter that you do something the most ideal way?


I’ll just share a recent anecdote from work. A developer asked someone ‘What are the pros/cons of using _____ library?’, here was the answer — ‘This is what everyone is using right now’.

There must be a limit to this nonsense. So we’re just going to drop this into our stack because that’s what everyone else is doing?


It's the "beating the averages" debate all over again. You get certain economies of scale doing what everyone else is doing, and face less political friction getting it adopted. But it may not be the absolute best solution for what you need, and over time, it may hold you back.

It's why we're not all writing our stuff in Lisp. ;-)


I'm 51 years old. Think I was about ~40 when I realized the dipshits I went to high school with (and thousands more like them) are running the world now. That was an absolutely terrifying realization. The author's point about tech content is true in my opinion and experience, but the larger point also applies to most every aspect of our society. 'Appeal to authority' indeed.

Fuck everything about that.

My friend from middle school, Mike 'the douche' W. is now the MAYOR OF A FUCKING CITY. Just no.

BECOME an authority on a given subject (takes a little longer, is much more valuable long term.) This also means you have to pick your battles... life is only so long, pick your shit and get good at it.

All that being said, community knowledge is a GOOD thing. We don't exist in an isolated state, the tech. community in particular. There's no one person who knows how all this shit works anymore, so thoroughly documenting what we do know, and sharing it globally is also incredibly valuable in a communal sense. None of us makes this stuff happen, whether you like it or not, we're all working as a team.

Oh, and also, passing on some wisdom here... never trust a contractor with clean boots.


I'm in a similar position as the author. I never thought I was expert enough to blog about how to code. I did rely on other people's blogs. Sometimes they were good, but quite often, as I developed my own expertise, I discovered better ways of doing things. At some point I started discovering that some people gave just bad advice. And not even just anonymous bloggers, but official documentation might present examples of things that seemed like a good idea at the time but the community eventually discovered better practices (I'm looking at Angular 1 in particular here).

Unfortunately, as I discovered better ways of doing things, I still didn't start blogging about them. I probably should.


>At the beginning of my career, I would never, ever, post anything technical on the internet. I thought that if someone was brave enough to post a blog post or take part in a tech discussion, they always know what they are doing. I couldn't be more wrong!

It's unfortunate that to have any sort of success as a software developer you must write about your opinion on frameworks, languages and techniques even if you know little about what you're talking about. Many developers and engineers blog because that's just what you do, not because they have anything important to say.


The problem is that many people are willing to admire and praise the action and infer something from it because they aren't willing to spend time actually judging the work.

That makes the action prestigious in itself.


> this blog may be bullshit as well

Maybe all blogs should say this lol


Or you could just assume the possibility regardless.


Sure but I appreciate humility in an author


People tend to follow paths that are tried and tested, and often blindly so. Why? Because it's incredibly efficient to do so, and the vast majority of products do not need some incredibly levels of tolerance or performance.

If everything on the web were to be bespoke items, built from scratch, things would stop up. Simply too resource consuming.

For many, the process is to simply copy something that works, and use it until it breaks - and then look at the needed upgrades / reasons to why things failed.


I have seen first hand two people getting hired (I did not interview them) who had reasonable blog posts and who, once they arrived at a desk, could not program. (Fortunately the second time I was in a position to change the hiring process).

I have also worked with several people whose skill was sounding clever. One liked to read MSDN magazine, and then regurgitate the talking points to the CEO and CTO, who liked to trot him out in front of potential investors and customers. The content was just advertising Microsoft products utterly inappropriate for our startup, and eventually the company died after failing to deliver feature after feature because of vast over-engineering.

There are communication skills and then there are programming skills. Being good at either one is rare. So statistically if you meet someone who is good at talking or writing about coding then, absent any other evidence, that actually tells you nothing about whether or not they can code. Script kiddies are still alive and well, and some of them are Blog Kiddies now.

Yet, though it is a small intersection, it is not empty.


The author is complaining about random internet content but it seems to me he should be complaining about cargo cult programming by his team.


I think 'doing it yourself' vs. 'search online to find a solution' are two sides of the same medal and we should be good at both things.

An old friend of mine has a tendency to dig deep through searches and while I tend to fire a few searches and then start doing it myself. There have been many examples when he came up with something he found online, which was even better than the thing I started building.

So while it contributes to my programming skills to get some practice, I think you have to find the optimum between building mediocre results yourself (using your own amount of limited time) and not being afraid to get your hands dirty (as opposed to the 'someone else has built it' attitude). In the end, both skills reinforce each other: The better you are at programming, the better you can judge a solution you find online, and the better you are at searching, the faster you can find something that is actually good.


"Big data" was the biggest "appeal to authority epidemics". fortunately, it seems that now people have a more balanced view on small vs big data.

Way to often I heard "Google uses Hadoop, so you need to use it to" for companies with data good for an old laptop.

Now I hear a bit of "appeal to authority" when it comes to monorepos.


If tech is kinda full of bullshit, which on better or worse kinda need to rely on math, and most of the time can be reviewed - then wait until you go to socio science, like psychology. You need to see there how much bullshit it is, you won't believe it. But, just like tech, it's better with it rather then without it.


Most content is bullshit, including this comment.

For possibly the least bullshit content you'll ever read, I defer to HN user RobertoG's comment from ~2 months ago: https://news.ycombinator.com/item?id=22792243

This blog post shoots itself in the foot with its conclusions:

> Realize that there's tons of misconception in the world. People and their solutions aren't flawless.

Therefore, any solution you come up with yourself is likely to be flawed and full of misconceptions. Might as well use someone else's code / misconceptions / flaws.

> Adapt solutions to your particular use case. <snip> Always analyze it before you decide to use it.

Who has time for that? We're all too busy being distracted by contentless-content. Or you could just say something like: it seemed appropriate at the time.

> Believe in yourself. Your solutions are not any worse than the ones on the internet.

This is the real kicker. My solutions probably aren't any better either. On the whole half of all people engaged in a profession or job-role are below average. You'd probably do just as well to outsource all of your decisions to either someone else or the crowd.

> Being a developer is about constant learning.

That's very idealistic. Maybe some / many people just want to go to work, do the minimum possible, and get home, and for a lot of people that's probably okay.

> People sometimes use libraries without a more profound understanding.

Correct me if I'm wrong here, but isn't at least part of the reason for using libraries that they abstract away the need to have a profound understanding of the topic?


Speaking of how much of it is bullshit, it's also amazing how much of a language, frameowrk, insert multi-year project involving dozens of people, are willing to cede their entire knowledge base to... a google group? Blogs? Stackoverflow?

If your documentation sucks, your thing sucks. And as time goes on whether you like it or not, the collective record of community supporting itself IS part of the documentation.

What happens when Google or Microsoft buys Stackoverflow and drives everyone away from it, and it eventually goes dark? What happens when all of those blogs start to disappear as people move on to the next thing (Ruby/Rails...), what happens when google just wakes up one morning and declares that they're tired of groups and are going to delete them all like they've done with a dozen other failed projects?


It's funny because I agree with what she says, but the amount of black/white in her post (and many of the comments) also trigger me.

I don't always go on a blog post searching for THE truth. I go to get someone's view on something. Maybe get excited by the journey or what was achieved. Learn about the use case. And somehow, in some cases, because they are less biases junior developers that write actually have interesting insights.

If I want the dry and no BS info, I'll go read the source, or the doc. If I go on a blog post to read about X, Y or Z, I don't just swallow it and take it at face value, I just hope to find something that will interest me to learn more about it.

And yet, I agree that a lot of what I see lately is marketed to no end, and it becomes harder and harder to separate actual value, from tooling marketing.


This resonates with me. I use caution now, as much security (and cryptography) advice on StackOverflow is wrong and Perpetuates harmful patterns, yet is never taken down. What’s worse? It often shows up at the top of Google. Many devs don’t show the same level of caution until something blows up


I call this (BDD) blog-driven development. There is nothing inherently wrong with tech content posted online... the problem is when people don't put some critical thought into it and decide whether the solutions they see online actually match their current needs.


> There's bullshit everywhere

The words of George Carlin ring in my ears:

> Bullshit is everywhere. Bullshit is rampant. Parents are full of shit, teachers are full of shit, clergymen are full of shit, law enforcement people are full of shit. > The entire country is completely full of shit


That was my thought as well. It's hard to define something to not appeal as bullshit but so many people do not care or can't comprehend the outcome/judgement on the reader side. A few comments above mentioned hackernoon and I saw that on our slack a couple of times. Now that I checked it its a complete shitshow with people just starting in the sector or shilling their crypto coin.

A bit hard to get around the whole thing when up to senior engineers seems to enjoy this type of content.

And thats why I am enjoying HN and more unfiltered channels like /g/. You can have a somewhat anonymous review/judgement/comment on topics which you would never came across on these blog posts.


I think the observation is OK, but the conclusion is wrong.

Engineering is not only about hard science, but also about processes. The way processes evolve is often based on empirical data rather than hard science.

Now, that does not mean that one can just forget about science entirely. As engineers, we should try to use a logical, rational, data-oriented mindset when making decisions.

If the reason a decision takes place is only because an authority said so, with no real reasoning behind, that would dogmatism: strongly held beliefs that will not be rationally discussed.

We should always keep an open mind and understand that a large part of our knowledge is simply a local maxima in our way to a deeper and better understanding of things, and dogmatism puts a stop to that process.


Making a ton of mistakes early in your career, being lucky to work with those that took the time to have constructive discussions/arguments with you (i.e. they're passionate and actually give a crap about budding talent), and paying it forward are a few key things that make for a good engineer.

I've pulled whatever hair out that I have on a Friday night trying to figure out something with a solution or approach unpublished elsewhere when I could be watching Doctor Who or getting fat on fat free ice cream and sedentary on my couch instead. Sometimes spending that personal time experimenting pays dividends in the form of a working solution. Other times it builds grit.


So... the author works as a developer since 2017.

The reality is most tech content is written by people with relatively little experience. People with lots of experience tend to have way more on their plates to bother writing blog posts or (tech) books.

Also the market is stacked against content for advanced users. Whether you are for ad impressions, visitors, likes, subscribes, book sales, you want to produce content that sells to masses of people and making it advanced is definitely going to cut your readership.

There is still a lot of value browsing through it. The reason is that since finding good information is difficult, the nuggets of wisdom make up for the lost time reading cruft.


As long as we're using project tracking systems like Jira and agile development, and at the same time developers are evaluated on the basis of how many "story" points they closed, this isn't really going to change.


A lot of times I want to share, and while I'm a pretty good writer, I really don't have the bandwidth to write a great article, but can usually throw it up on a screen. Example: https://medium.com/@bdcravens/fixing-docker-for-mac-and-rail...

I'd probably share a lot more, but it's not about not having time to share, as much as not having the time to bring the quality up to a level I'm willing to attach my name to. I suspect many are in the same boat.


This is not a tech problem. This applies to all the content on the internet.

I like your suggestion to motivate people to start thinking about what they are going to use and why.

When we have team refinements at work we learned to question everything. There are some senior developers that get most things right, but not every time. Sometimes some junior dev just throws an idea that turns out to be way better.

This is why I think the process of coming up with a solution is much more important than the solution itself.

With that being said - please remember that there is a fine line between valuable skepticism and just being annoying :)


I'd go even one step further: doubt what you think you already know.

I often check documentation of even well-known functions like printf() to remind me of details that I might have forgotten or remember inaccurately.


This is very true. I think I'm breaking at least several dozen "Rules for How It's Supposed To Be Done" in my fairly large software system (self-funded SaaS). But each and every time I thought carefully, considered it, and then made a decision. It's worked out great each and every time I did that.

My takeaway is the same as the author's — rational approach is king, things should not be taken for granted and "best practices" might be good ideas, or they might just be the current fashion du jour.

Think for yourself.


> Articles have plenty of conceptual mistakes. And people are not perfect, either! Senior developers are not always good developers.

I think this point is well made. It is a good caution when consuming content on the internet to always be assessing. I seek to understand how something works before I use it.

Yet here's my question: Does this mean I should not be writing for my personal blog?

Writing helps me work out, articulate and understand better the tech that I am working with. And it might help others to work it out as well, even if it's not perfect.


Software libraries, APIs, tools, dependencies have exploded exponentially since the early days of C language and a handful of Berkley/Bell libraries. I often use a dozen different things for my projects and the next project invariable needs a different roster.

Thus I want to voice my contrary opinion that it is okay to "consume" and not "create" for non-core parts of your project. Need to do dump an arcane data structure to a remote logging tool? Go ahead and copy paste that StackExchange snippet kings!


I agree that is difficult to find good blog posts/tutorials on technical stuff. When I want to learn something for the first time, I usually go through the docs and if they aren't friendly enough (for me) to read them and learn, I go and google a nice book about the topic. That being said, there are a lot of nice blog posts about technical stuff, not tutorials/teaching but actual experiences/opinions, people sharing and documenting what they learnt. I appreciate those.


I forget the exact numbers but half of all programmers have been doing it less than five years, and this has been true the whole time. Exponential growth, eh?

Also, IT is fashion-driven and largely ahistorical. I have worked with people who don't know who Alan Kay is, for example, or have never heard of Prolog.

I think we are in an alchemical phase and (hopefully) transitioning to a chemical phase of knowledge. (Alchemy was mostly bullshit too, but there was a hellofa bull in there, eh?)


a propos this I just thought of a writer who I used to follow at the beginning of the millennium. I'm not going to mention their name, and I think their articles were not bullshit per se, but... whenever I downloaded the code for his longer articles and tried to run it locally there were always lots of bugs (although to be fair I only did this for the really complicated things he wrote and only 3-4 times)

Just crazy that I would spend hours working on it to get it to work, I was always weirded out by it. This guy was sort of famous. Smaller bits of code were always fine and he had some pretty cogent insights on things, but big bits of code was just not working without significant rewrites.

To be fair perhaps this was a different time and things not working reliably was more widespread, I reemmber this article I wrote for SitePoint in 2008 https://www.sitepoint.com/rewrite-web-chickenfoot/ (please excuse me if too much bullshit, but I was less old) got a remark from the editor that testing took longer than normal, which I was of course surprised by because such is the time-honored reaction of a programmer when the code works on their own machine.


Every thing you read needs to be taken with a grain of salt. Always look back in the history to see if the same problem came up and how some one solved it. If you can find it, use it. Only by using some existing solution you can find faults if any and improvise. The write about that. This cycle will keep going on. Thats how we have evolved. There is no BS, it is just how they solved it


If most of it is bullshit, then the harm of bullshit mustn't be that high.

If it were, then none of this would exist.

But that there are some many tech companies taking so many different approaches (the majority bullshit) stands as evidence that there must be some acceptable amount of bullshit an organization can handle.

Textbook code is nice, but shipping and improving product is nicer.


I like how "choose boring technology" and "most tech content is bullshit" are simultaneously trending.


I think it comes down to task turn-over. We get lazy when our job is about story points. There is no real reason to reinvent the wheel most of the time. When you need to eek out every bit of performance you need to dig deeper. I think finding the right balance of time spent vs perfection is important.


If something works, we keep doing it. Often we learn by looking at others. Or we try out different things and stick with what works best. For example: Every day you brush your teeth, why do you brush it that way? Probably you where told by a Dentist, but you haven't question it.


Agreed

The "most popular" (and maybe click-bait like) the content, the more crap you'll get. Especially when people think they know the subject but they don't.

Most common offender nowadays: ML and Data Science. I've found articles with glaring errors, techniques that don't make sense, very shallow tutorials, etc (Disclaimer: nobody is immune from making mistakes, not even me)

And then you get "oh but you start training and then your loss go to zero, right?! This means it works, right?" Yeah. No.

If your training loss goes to zero, your are probably overfitting or the problem you're trying to solve is too simple. If your testing loss goes to zero, you're probably doing something wrong. Or my favourite: your loss is very low but what you're trying to predict has result A 99% of the time and result B 1% of the time. What's your loss if you only predict result A?

I mean, if even the myths about /dev/random and /dev/urandom keep circulating around, can you imagine about other stuff?


I took a grad level course on data mining/machine learning back in the early 2010s, before the current gold rush, and while there was some level of theory and programming, the professor spent a lot of his time discussing these finer points. The (apocryphal) example of armoring planes in the wrong spots [0] sticks with me to this day.

It’s human nature to focus on the more immediate, tangible outcomes - eg going through a pytorch tutorial - over spending time trying to really understand the problem they are trying to solve. Great teachers try to guide their students there, and great students are perpetually calling themselves out mentally to try and stay on the track of understanding rather than rote repetition. But it’s very hard.

[0]: http://www.ams.org/publicoutreach/feature-column/fc-2016-06


As are recipes. I don't understand why recipe blog writers want to be seen so much that they're willing to compromise their content. It's just a bunch of bullshit to pad out for SEO and then at the end the actual recipe.


The "padding" is for their existing followers who actually do want to read the padding (life stories,whatever) irrespective of the recipe itself. The recipe is advertisement to gain new followers from Google traffic. Merging both together works better than separating them out from the point of view of gaining more followers.


This site is one of the reasons.


I think the major cause for this is the self branding phenomena that started together with the social media boom. Suddenly people got it to their minds that they are supposed to market themselves like products. And with the best tradition of PR, the truth don't matter, only the optics. So you got a bunch of mediocre engineers, some hardly out of uni swamping the net with opinions and shoddy advice , written in a very knowledgeable tone, because "that's the game". Combine this with tons of tech startups using same PR technics to sell their often than not, less than perfect technology.

With the crazy boom in developers, you got a whole generation of mediocre devs without any tradition to build on, surrounded by silly opinions and fads to learn from.

Now replace "developers" with any information age occupation , this remains true.


And then your manager/architect reads this content and asks you to implement this, saying "it's easy and it just works". They never go deep enough to understand the costs, consequences and tradeoffs.


To be fair, any writing that is labeled "content" is indeed bullshit.


Weirdly, the word "content" for articles or other media seems to actually devalue the content of the piece in lieu of its marketing value. Great stuff. They’ll have to come up with a new word for this practice pretty soon, as more people realize that they’re reading fancy ads instead of actual content.



Does the fact that this, 'everything is bs' article by a junior developer is taken so seriously on this forum have anything to do with the fact that the author looks like a gorgeous hacker from a science fiction movie? Or maybe just that she has a female name? I was just discussing that with my roommate in the kitchen. My roommate is of the opposite opinion that women get taken less seriously. And I don't want to hate on OP obviously. But I want to ask what do you think?

I do think it was well-written and the writing kind of saves the content. Besides there's absolutely nothing wrong with looking good. We might need a bit more of that in tech. So I'd encourage her to continue blogging.


Sure, most tech articles are bullshit... but the question is, is the average developer going to do better figuring it out on their own? Are articles worse than the average developer?


This is pretty good, but I had to chuckle when the author threw in a suitably impressive quote from Sagan about the dangers of appeals to authority.


There might be a lot of BS content, but there are also some gems. It is sort of like the Web at large, really.

Turn up your BS filter and let it roll.


Most of the things are bullshit. Especially on the internet where everyone can share their thoughts virtually without any filters.


The word "most" is mostly used between 60% and 90%, or more precisely greater than 50% and less than 100%


Twitter is non-stop tech garbage in my opinion, to me it seems like an endless stream of marketing pieces...


"Don't consume. Create."

vs

"We have two ears and one mouth so that we can listen twice as much as we speak."


Thinking is the hardest work there is, which is probably the reason why so few engage in it.

Henry Ford


"I was just following the pattern" is the programmer's Nuremberg defense.


Crypto is not bullshit, probably. Don't roll your own crpto, probably.


Personally, my favourite one is seeing 1000th tutorial post on React.


Hey c'mon, back in elementary school, every cohort has at least written about their favorite past-time during writing classes. Just because the subject/title is the same, it doesn't mean the writing is the same. Every writer ends up with a style of their own and as a teacher, it was mostly a joy to read. ;) The only reason why there isn't a 1000th tutorial on Favorite Past-time is because there wasn't high speed, unlimited internet back then and students weren't allowed to use the computers back then. ;)


so am i no longer allowed to copy-paste from stackoverflow?


Haha, no. You can still copy-pasta and also blog about it as real content. C'mon, how else can I feel good about my shitty self?


I think this applies to a whole lot more than tech. ;)


As a saying that used to be popular back in the day goes, Nobody has been fired for buying (from) IBM. This in my view is what explains much of the problem.


so... "Choose boring technology"


Has anyone else faced the raw existential horror of how many programming tutorials there are online for a single question? Look up how to concatenate arrays in JS, and there are just so many sites that it almost makes my head hurt. I guess complexity and competition are necessary tenets of capitalism, but I feel some sort of terror at people just churning these articles out when there are so many already.


thisIsAField thatThoughtCamelCase wasASensible idea


Sturgeon's law.


[flagged]


hacker news comment is probably the most reliable source of info i have regarding tech thoses days.

Not because the majority of comments are useful or right, but because in between all this regular interner noise you sometimes have the unique opportunity to speak with the creators of the tech itself, or by researchers working on the issue. Now to be honest, most of the time when an issue is complex the most useful comment is often a link to a series of lessons on the subject (which is great).


I actually agree that hackernews has a better feed of aggregated content, and I that there are brilliant people lurking in the comments.

But that's the main content, and about 5% of the comments.

From the article:

"This pattern is consuming — instead of creating. Consuming — without questioning. Consuming and hiding behind an authority.

I saw developers taking other people's solutions for granted. Not thinking twice about the approach, not bothering about analyzing it."

It's normal and within acceptable limits, but if you want to find a circle jerk devoid of critical reasoning--a celebration of consumption over creation--it is very much alive here.

And that's fine, really, so long as we never stop being aware of it.


I would like to second this. For the past 4-5 years I have lurking this site and /r/programming in parallel. And while both communities definitely have their common accepted opinions, the good technical discussions seem to always be here instead of /r/programming


Agreed




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

Search: