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.
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
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.
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.
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.
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.
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...
...
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...
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
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
Yes, that is beautiful, true, and illuminating.
Don't forget emojis! Such a waste of time! ⌛⌛⌛
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.
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?
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.
Actually, let me change my mind on the GIFs. Keep the best ones.
It shouldn't be this way, but it frequently is.
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.
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.
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.
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.