[HN Gopher] Why My Blog Is Closed-Source
       ___________________________________________________________________
        
       Why My Blog Is Closed-Source
        
       Author : feross
       Score  : 30 points
       Date   : 2021-04-14 18:16 UTC (4 hours ago)
        
 (HTM) web link (www.joshwcomeau.com)
 (TXT) w3m dump (www.joshwcomeau.com)
        
       | rburhum wrote:
       | > this site and its newsletter costs about $130 USD a month to
       | run
       | 
       | I have toy site that gets around 100k users a month, with
       | background services like a postgres db... and it costs me under
       | $20 to run. I do everything in CloudRun (serverless) with a
       | managed DB. What in the hell is this person doing?
        
         | nasmorn wrote:
         | Especially since on a blog one would expect most traffic to be
         | served from a cache of some sorts.
        
         | oconnore wrote:
         | Each page load for this article is 485 KB data, but some of the
         | other pages are more like 1.5 MB
         | 
         | This blog has seen 14,000 views today, but some of the other
         | pages are ~38-40k views
         | 
         | So if you assume ~990KB average page size, 30k views, and he
         | were to post once a day, then that is $78/mo in bandwidth costs
         | assuming 9c/GB. Maybe people tend to click around to the
         | homepage / old articles, or refresh the page a few times?
        
           | Cu3PO42 wrote:
           | What kind of traffic cost is that? I just checked and I pay
           | 1.19 EUR/TB after the first 20TB. The rate you mention is
           | almost two orders of magnitude higher.
        
             | sxp wrote:
             | 10GB/$ is the approximate price for bandwidth on
             | EC2/GCE/Azure. Bandwidth is probably the most expensive
             | item on those cloud services compared to other places.
        
               | Cu3PO42 wrote:
               | I see. I knew bandwidth there was more expensive, but I
               | couldn't have fathomed how much more expensive. I am
               | surprised that one would be willing to put up with that
               | for software as simple as a blog, but obviously a lot of
               | people are.
        
           | dj_mc_merlin wrote:
           | For under 1TB in monthly bandwith many providers just
           | straight up give it for free. And that bandwidth cost is
           | crazy high regardless.
        
         | dsr_ wrote:
         | Paying other people for their services rather than running
         | things in a VM.
        
         | silicon2401 wrote:
         | What would be the best way to get a toy site like that running?
         | Buy a domain and host with S3? I've never built and run my own
         | website, and it's something I'd like to try soon.
        
           | dsr_ wrote:
           | My advice: buy a bottom-tier VM. $1-2.50 a month. Install
           | apache or nginx, pick a static site generator. Investigate
           | LetsEncrypt. Run a local git repo and clone it off to a local
           | machine every so often.
           | 
           | When you're feeling comfortable, buy a domain and set up
           | LetsEncrypt for SSL. If you've found a limitation in the VM
           | provider, consider moving to a different one. Consider
           | whether a CDN is the right thing for you.
        
         | aftergibson wrote:
         | It only it was open source. Perhaps the community could suggest
         | cost effective alternatives.
         | 
         | In all seriousness, running a blog that relies on serverless
         | invocations would guarantee I'd do everything I could to avoid
         | anything popular in case I had to pay out of pocket for a huge
         | traffic surge.
        
           | Spivak wrote:
           | Does it really matter when, presumably, your caching layer
           | (however you choose to implement it) is handling basically
           | all of your traffic for a nearly static site?
        
         | francisofascii wrote:
         | Cloud Server + CDN + Email. $130 doesn't sound that high.
        
           | dj_mc_merlin wrote:
           | CloudFlare Free Plan: $0
           | 
           | Email: $5-$10 FastMail plan, up to 16k emails a day
           | 
           | VM: If you manage to spend $120 here, you've fucked up
           | somehow since you're hosting a static site with a like
           | button.
        
         | NikolaNovak wrote:
         | What I imagine is one factor is owner's monthly time
         | involvement, either initial setup and/or monthly average and/or
         | peak (when things inevitably break:)
         | 
         | I'm at a point in my life where for non-core
         | activities/interests, I'd rather / more easily spend $100 to
         | have a turnkey, than $20 but spend 10 hours :-/
         | 
         | (understanding that the author's reasoning is wildly different
         | of course)
        
       | rosmax_1337 wrote:
       | Very impressed by the looks of a lot of things on his blog.
       | Tasteful and never over the top, but still interesting and
       | unique. But I did not appreciate the audio being played when
       | hovering over things, or pressing things. Audio in a browser
       | should really only be used in a session that truly needs it,
       | examples include: games, video/radio/media, chatting.
       | 
       | I'm not a web-text-purist, but audio in a document is where I
       | draw the line, that annoyed me.
        
       | aarondf wrote:
       | This is one of my favorite recently-discovered blogs. His posts
       | are so in depth and the whole thing is beautiful and slick.
       | 
       | I too prefer for my blog to be closed-source, for many of the
       | same reasons.
       | 
       | Mine is decidedly less sexy, it's just Laravel + Markdown, but I
       | did write about it recently:
       | https://aaronfrancis.com/2021/blogging-with-markdown-in-lara...
        
         | ssivark wrote:
         | It's so closed source, even the URL doesn't work! :-)
        
           | aarondf wrote:
           | Ha I think it does now. It was linked to my .wip dev
           | environment for a few minutes there! Oops.
        
       | tfehring wrote:
       | > _It might surprise you to learn that this site and its
       | newsletter costs about $130 USD a month to run_
       | 
       | Yes it does. I know you can never criticize someone else's infra
       | nowadays without coming across as "I could clone StackOverflow
       | and get it to run on a Raspberry Pi over a weekend," I have no
       | idea what or how much stuff his backend is doing, and I know
       | serverless is an added and often worthwhile expense....but man,
       | that's way more than I'd expect.
        
         | bArray wrote:
         | Yeah, I saw that figure and thought "damn, that's high".
         | 
         | I'm not sure how many hits per day that works out as, but
         | currently I have a server that is 5 euros per month handling
         | 20k hits per day (static and dynamic content on an old
         | dedicated C1 Scaleway). Another server I run for a gaming
         | community costs $1 per month.
         | 
         | > I have no idea what or how much stuff his backend is doing,
         | and I know serverless is an added and often worthwhile expense
         | 
         | I keep looking at 'serverless' (+) - but it just seems like a
         | way to sell me less for more. The benefit I get currently from
         | a cloud solution is location (spin up an instance close to
         | where the traffic is coming from), maintenance (I move around a
         | lot) and network (dedicated high speed internet that cannot be
         | easily DDoS'd).
         | 
         | (+) When I first heard about serverless, I really hoped it was
         | a decentralized content hosting network - a bit like how
         | something like PeerTube can benefit from having multiple users
         | at a time. A person can dream!
        
         | 1123581321 wrote:
         | He uses Convertkit to manage email, which costs him most of
         | that figure for the "site and its newsletter" if he has 15k
         | subscribers (about half of his Twitter following.)
         | 
         | https://convertkit.com/pricing
        
         | Etheryte wrote:
         | I think is a very valid criticism, paying $1500 a year for a
         | static site with a like button is odd. Hosting this site on
         | something like Netlify would literally be free while also
         | satisfying every other requirements save for the heart button.
         | Even the Netlify pro tier would only be about $200 a year for a
         | small site.
        
           | silicon2401 wrote:
           | how would you compare using Netlify to AWS? could you get
           | started on Netlify once you just buy a domain name?
        
             | Etheryte wrote:
             | Netlify is absurdly easy to get started on, it supports
             | many static site generators etc out of the box. For my
             | personal site it was a few clicks and no manual config
             | required. Since you mentioned domains, you can even buy
             | domains through them with auto-renew etc. I haven't used it
             | for any large scale projects, but for small things, their
             | batteries included approach is great.
        
       | raymondgh wrote:
       | $130/month for a website and newsletter considered minimal! Wow!
        
         | FalconSensei wrote:
         | newsletters are not cheap if you have thousands of subscribers.
        
           | slenk wrote:
           | For $130 he could easily host his own email server that could
           | handle that much traffic AND be accepted by major email
           | providers.
        
       | yjftsjthsd-h wrote:
       | I can somewhat sympathize, although I don't view these arguments
       | as _strong_ since they could mostly be fixed with minimal effort.
       | On the other hand, it 's just a personal blog, so if you don't
       | feel like sharing then that's cool too.
       | 
       | * The unpublished posts would require a different workflow; you
       | could easily keep a private repo and a public repo, and publish
       | by pushing from private to public.
       | 
       | * I don't really see a problem with copycats, personally. I
       | personally feel like theme/design is just a minor style thing on
       | top of the content and not even something that you "take credit
       | for". Like, if someone wants to copy everything but the content
       | of my blog, more power to them.
       | 
       | * The security angle is basically adding obscurity, which is a
       | reasonable additional layer, however thin.
        
         | bellyfullofbac wrote:
         | Yeah, what a weak post. My flippant TL;DR: "Because I'm too
         | lazy to separate code and content."
        
           | yjftsjthsd-h wrote:
           | I think that's a touch uncharitable; a lot of it is "because
           | I'm not willing to put in the effort to make the code public-
           | worthy". The security concerns, for instance, boil down to
           | wanting the extra layer of security through obscurity.
           | Besides... it's a personal blog. I don't really agree with
           | the reasons, but it's their blog, so it's not like they owe
           | anyone anything, including source code /shrug
        
       | resoluteteeth wrote:
       | The whole premise seems a little weird to me since it's totally
       | reasonable not to open source your blog website to the point
       | where it's probably not even necessary to justify it.
       | 
       | I do like it, though, even the silly heart feature which I would
       | have expected to hate.
        
       | slenk wrote:
       | Hmm, having a like button use a Lambda function doesn't seem very
       | efficient if it does _nothing_ as he says, even if it is cool.
        
       | approxim8ion wrote:
       | For the source control point, I do it this way:
       | 
       | My entire working folder with markdown posts, drafts, templates
       | etc is a private git repo. The output (the static HTML, CSS,
       | images etc) is a public repo.
       | 
       | I have a tiny shell script to commit, push and publish the site,
       | and it works just the way I want it. His other points are
       | understandable. I personally don't take my blog that seriously,
       | it's just a pet project.
        
       | yur3i__ wrote:
       | >It might surprise you to learn that this site and its newsletter
       | costs about $130 USD a month to run; I don't make any money off
       | the site, so this comes out-of-pocket. I'd really like to keep
       | that cost as low as possible
       | 
       | http://bettermotherfuckingwebsite.com/
       | 
       | I really don't understand why something like a blog needs to be
       | much more than this to be honest.
        
         | OhSoHumble wrote:
         | It's a blog that focuses on building rich, interactive, CSS
         | heavy websites. I don't think spartan design would really speak
         | well for the purpose of the blog.
        
           | NicoJuicy wrote:
           | I run 20 home build sites on a 20EUR server.
           | 
           | ( As a comparison)
        
       | HaoZeke wrote:
       | Yes. People do copy. You'd be lucky to even find attribution.
       | This is one of the things which open source contributors need to
       | make peace with. The way I look at it, the original grew out of
       | my own experiences in my head and that can't be copied. As for
       | manifestations... The more pretty / functional code and sites
       | there are, the better!
       | 
       | A tip from over ten years of FOSS : never try to track your FOSS
       | code, nothing good can possibly come of it
        
         | silicon2401 wrote:
         | This is part of the reason I don't publish my creative works. I
         | show them privately to friends and family, but I don't publish
         | because part of the creative process for me is control: I may
         | not be able to control much in the world, but I enjoy
         | controlling every aspect of things I create, including who sees
         | it and when. It's been very rewarding, and makes me sympathize
         | for people like Kafka whose work got published against their
         | explicit wishes.
        
         | CodeMage wrote:
         | Can someone explain the part about copycats? The way I'm
         | reading it is that the "copycats" forked the repo, and then
         | retained the presentation while changing the content. In other
         | words, it's like writing your own resume using someone else's
         | publicly shared Word template. What am I missing? Why is this
         | wrong?
        
           | shirleyquirk wrote:
           | because the sites are portfolios for web designers, so the
           | medium is the message. it's as if a resume for a job as a
           | Word template designer was written with someone else's
           | template.
        
             | CodeMage wrote:
             | Oh, okay. Thank you for clarifying.
        
           | dj_mc_merlin wrote:
           | The repo isn't just a presentation template, it is a piece of
           | work that proves you know your stuff. If an FE engineer's
           | personal site is beautiful and slick, that's an obvious plus.
           | Copying someone's handmade design (even worse, lazily) is bad
           | manners. People are obviously going to assume you made it.
        
       | remram wrote:
       | While I agree with the overall decision, this hurt to read:
       | 
       | > SInce it's closed-source, none of that matters to me. But if it
       | was open, folks would want to grab it to use in their own
       | projects. I'd feel a certain responsibility to make sure that it
       | works well, or at least to make sure that its shortcomings are
       | well-documented. And I don't want that responsibility right now.
       | 
       | I see this argument over and over. I see it in academia as an
       | excuse not to share code and data. "I haven't cleaned it", "it
       | might not work for you". *I* will decide if it fits *my needs*,
       | and if it doesn't I don't see how it's your fault. Code is better
       | than no code, I always have the option of not using it.
        
         | drenvuk wrote:
         | yeah it's a pretty weak argument. The first one - keeping
         | people from ripping it off without attribution - is stronger
         | regardless of its selfish bent.
        
           | souldeux wrote:
           | it's a weak argument until you start getting pull requests,
           | emails, passive-aggressive reddit posts, etc. etc. etc
        
             | drenvuk wrote:
             | just turn off your internet already if you can't ignore
             | people.
        
         | aparks517 wrote:
         | That seems like a reasonable attitude to me. You might be
         | surprised to learn that not everyone shares it, though.
         | 
         | My personal experience is that my paid customers have been much
         | friendlier and less demanding than users of things I've put out
         | for free. That's not a problem in and of itself: sometimes
         | demanding users is just what I need to sharpen up myself and
         | what I'm building. Having noticed this, though, I've tried to
         | be more thoughtful about what I put out, in what format, and
         | under what terms.
         | 
         | All that to say: I sympathize with both points of view.
        
         | DoreenMichele wrote:
         | I have spent a lot of years getting healthier via diet and
         | lifestyle with an incurable and deadly condition. You would
         | think people would welcome alternatives, given that it's
         | incurable and deadly. You would think diet and lifestyle
         | approaches would be the most conservative thing you could do
         | because you have to eat and live anyway, so better to be more
         | informed about how to do that well in the face of this.
         | 
         | It was an amazing amount of ugly drama to try to talk to others
         | with my condition about what I do and what I think about why it
         | probably works. And then people would take very conservative
         | bits of advice that were the most well established and screw
         | them up to an amazing degree.
         | 
         | One example: Coconut oil is a very well established beneficial
         | supplement for my condition that is medically recommended and
         | this is common knowledge for the CF community. It also tends to
         | cause diarrhea.
         | 
         | So "on my advice", someone began giving their toddler like a
         | freaking tablespoon of coconut oil per day -- which is insane
         | amounts to give -- and the result was very extreme amounts of
         | diarrhea that couldn't be contained by a diaper and resulted in
         | the floor needing to be mopped (like every single day until she
         | finally said something to me and I was like "That's waaaay too
         | much coconut oil to give").
         | 
         | So, ultimately, I left all the lists and I still write about
         | what I do for my health, but I've worked hard at figuring out
         | how to talk about things to a lay audience knowing that some of
         | them can manage to do amazingly stupid and harmful things with
         | the most conservative suggestions. And I mostly don't have an
         | audience for that kind of writing and I'm okay with that. Go
         | have your dumpster fire elsewhere and don't try to pin the
         | blame on me, thanks.
         | 
         | Code no doubt has some people like that. And there's a crazy
         | amount of built in assumptions that the original author will
         | know but may not know he "needs" to document and spell out
         | explicitly so some random internet stranger doesn't create some
         | dumpster fire and claim it's someone else's fault because "no
         | one told me...!"
         | 
         | And no amount of "use at your own risk" type language is enough
         | to protect you from crazies who want something for free, aren't
         | competent enough to effectively deploy it and now think that
         | freebie owes them like they paid good money and it came with a
         | warranty.
        
           | remram wrote:
           | People might do that anyway, see how you use React components
           | on your blog and replicate it on their own, doing it wrong
           | and making their webpages take minutes to load. See your
           | animated sparkles, and replicate the effect over their whole
           | pages. They can do that without your code.
           | 
           | If you want to make absolutely sure the "crazies" don't get
           | any bad ideas from you, the only way is to not publish
           | anything at all.
        
             | DoreenMichele wrote:
             | And not publishing something is a valid choice that the
             | author is currently making with regards to his code for his
             | blog and I support his right to be closed source on that
             | detail so he can focus on other things.
        
               | remram wrote:
               | We are discussing his article called "Why My Blog Is
               | Closed Source". I am not randomly criticizing his life
               | choices, just engaging in the discussion he started.
        
               | DoreenMichele wrote:
               | Well, arguably, _other people_ started this discussion.
               | He blogged about it because people said stuff to him
               | about it and he chose to respond more generally, probably
               | in part to try to reduce the amount of time spent
               | explaining it one on one.
               | 
               | Yes, any time you publish anything at all, you risk
               | having someone misuse it. But someone who replicates a
               | thing and messes it up where you didn't provide the
               | source code is less likely to act like "you did this to
               | me, you evil monster, you." More importantly, the rest of
               | the world is less likely to hold you responsible.
               | 
               | Publishing A and publishing B don't come with equal
               | risks. He is choosing to mitigate risks for reasons that
               | make sense to him in areas that matter to him and
               | explaining it on his blog.
               | 
               | You can feel however you feel about that, but he has a
               | right to make those distinctions and choices whether you
               | like it or not.
        
         | nharada wrote:
         | You (and many others) might have this viewpoint, but it's the
         | loud minority that causes the pain.
         | 
         | Even with the small amount of open source software I've
         | maintained I've gotten all kinds of angry emails and completely
         | useless "bug reports" with no information. It gets exhausting
         | after a while, and I agree that it's hard to just say "I don't
         | care at all" when it happens. At minimum it's a bad look for
         | you professionally if you never actually help maintain your
         | open source software.
        
         | Cu3PO42 wrote:
         | This is a very reasonable position on your part. Unfortunately
         | there are many people who don't share the sentiment. I've
         | personally had people bug me again and again via mail, IRC, and
         | Twitter DMs over a relatively small project that I had
         | abandoned/wasn't able/willing to maintain anymore. Sure, I can
         | just go ahead and ignore those people or send them a standard
         | response, but I still found it to be mildly exhausting. I can't
         | really blame someone for wanting to avoid that.
        
         | thinkmassive wrote:
         | It seems like a premature optimization, similar to choosing a
         | proprietary source available license from the start because
         | you're worried about Amazon stealing your customers.
         | 
         | Having aspirations about your project becoming a victim of its
         | own success is good. Overselling your own success before it's
         | caused you a single issue is probably not good.
        
         | excerionsforte wrote:
         | An acceptable reason for not sharing code is because you don't
         | want to at this time, which may very well be never which is
         | just fine. There's no need to share your personal code
         | especially if you do not feel proud about sharing it.
         | 
         | Other situations like research, typically need the same
         | materials to do verification of that work.
        
           | remram wrote:
           | I agree that you don't have to release anything, and I won't
           | call you out for it. If you write a blog post about it
           | though, I might participate in the discussion and examine
           | your arguments.
           | 
           | Of course the problem of research is slightly different,
           | since you have a claim, are trying to be "peer reviewed", and
           | possibly were funded by public money.
        
         | hu3 wrote:
         | Unfortunately some people have no respect for open source
         | maintainers time and do open issues with little to no context.
         | 
         | Take a look at the issues of any popular Github project to see
         | this phenomenon exacerbated.
         | 
         | Coincidentally I stumbled upon an example today while randomly
         | browsing Github projects. A project with 9k stars and someone
         | opens an issue basically saying: "commands do not work":
         | https://github.com/walkor/Workerman/issues/611
         | 
         | I don't mean to do finger pointing at this person. It's a
         | common behaviour.
         | 
         | For maintainers it's exhausting to pursue each and every issue,
         | asking for context. And if you don't keep a tight leash on them
         | or use a bot they just pile up to hundreds of issues.
        
           | remram wrote:
           | Note that I am not saying anyone should _maintain_ anything.
           | Disable the issue tracker if you want. I don 't demand that
           | you respond to any communication about it or do anything
           | further.
        
       ___________________________________________________________________
       (page generated 2021-04-14 23:01 UTC)