• Dev.to: The most Pleasant Online Community.

    Earlier this year, the developer centric social network DEV started popping up regularly in the portions of The Internet I frequent. And for the past month or so, I’ve been loading up the home page almost as frequently as Reddit.

    The site itself is like some sort of impossible hybrid combination of Twitter, Stackoverflow and Livejournal. They describe themselves as:

    Where programmers share ideas and help each other grow. It is an online community for sharing and discovering great ideas, having debates, and making friends.

    In function, it’s a blogging platform much like every blogging platform that is come before LiveJournal, blogspot, tumblr, medium, etc. With a markdown-based editor which I assuming is intentionally “programmy” to make developers feel at home.
    Unlike blogging platforms that have come before, dev.to allows creators to easily repost via RSS, maintaining a canonical link to you original post! They have no desire to own the intellectual properly.

    In substance, it’s much like stackoverflow, crossed with r/programming or hacker news. Somewhat like stackoverflow, developers post questions relevant to every aspect of development (programming, work, metal health, whatever). But also, developers post tutorials, idea, projects, etc like a reddit or hacker news.
    Unlike other developer communities, the entire site is an open source project that anybody can contribute to!.

    In form, it’s much like Twitter. The homepage is a reverse-chronological-algorithm-sorted feed (based on your interests) of posts, with headlines, hash tags, hearts and cute little avatars of everybody’s faces.
    Unlike Twitter, you’re not limited to hearting a post, you can also unicorn it (I don’t know why).

    As a whole, DEV manages to be the most diverse and positive communities I’ve been a part member of in a long long time. By diverse, I mean in every way! By positive, I just mean, people are generally nice and pleasant. You can ask a question and not be told “you asked it wrong” (like they would be on stackoverflow), receive 100 snarky sarcastic replies (like Twitter), or “your dum” (like reddit).

    Frankly, I’m not sure how they’re pulling it off. Perhaps it’s because the site is so niche. Or maybe it’s because it’s so small (< 200,000 members at the moment, which is tiny), maybe they haven’t reached the tipping point where toxic individuals are able to dominate the conversation. The fact that the founder Ben Halpern seems to be one of the nicest people on The Internet can’t hurt either.


    With all the negative press surrounding the big social networks, I’ve been expecting a some venture capital funded behemoth to replace them any day now. In the same way that Facebook killed MySpace or Reddit killed Digg, I assumed there would be a bigger player that destroys Facebook or Twitter.

    But now I’m wondering if niche networks like DEV are the way of the future and it will be more of a death by a thousand cuts for the likes of Facebook.

    Whatever might be the case, DEV is a welcome return to a kinder, simpler internet and I love it.

    I wonder if there are other niche social networks like that I’m missing out on?


  • Is Modern Web Development Too Complex?

    As someone who has been in the industry for nearly as long as the industry has existed, the trajectory of modern web development is concerning. Oftentimes the “modern” tools seem overly abstract, interdependent and complex. The “modern tools” I’m referring are a range of technologies designed to improve development processes: dependency management (NPM, composer, etc), frameworks (react, laravel, etc) and “DevOps” in general (docker, AWS soup, etc). Slot in any trendy solution of the day.

    Or to put it another way…

    It’s not that there’s necessarily anything wrong with any of these tools. It’s more that I’m concerned that they are hurting our approach problem solving.


    Early this week a Hacker Noon article — Understanding Kafka with Factorio — from a few months ago made it’s way into my work slack.

    This post is a prime example of the way of thinking that concerns me the most. For starters, comparing a web development problem+solutions to Factorio — one of the most complex and difficult RTS’ to date — is very telling in and of itself.

    The author starts by setting up problem that should be familiar to many developers.

    Let’s say we have three microservices. One for mining iron ore, one for smelting iron ore into iron plates, and one for producing iron gear wheels from these plates. We can chain these services with synchronous HTTP calls. Whenever our mining drill has new iron ore, it does a POST call on the smelting furnace, which in turn POSTs to the factory.

    So, we have 3 services that depend on each other in a linear fashion. If any one of them fails, the entire system breaks. There appears to be zero fault tolerance and that could be bad.

    Enter Kafka…

    With Kafka, you can store streams of records in a fault-tolerant and durable way. In Kafka terminology, these streams are called topics.

    With asynchronous topics between services, messages, or records, are buffered during peak loads, and when there is an outage.

    Neat.

    But hang on. Now we have four points of failure instead of three! In fact, we’ve now introduced one single point of failure. If the Kafka layer fails the entire system fails.

    Why should we trust Kafka more than we trust the 3 microservices, we built? Are there ways to make the individual microservices more fault tolerant?

    Why not both? The author of this post seems like a solid developer who knows what he’s doing. Perhaps the underlying assumption is that our microservices are already as fault tolerate as they could possibly be and we should add Kafka as an additional layer of fault tolerance.

    We’ve introduce a fourth complex and specialized technology into the stack. Now we need a Kafka specialist on our team…


    This post is not meant to be an analysis or critique of Apache Kafka.

    It’s meant to provide an example of the way modern web developers tend to solve problems. We tend to build or implement complicated systems that provide an abstraction layer above problems, without adequately addressing the root problem.

    I’m quite concerned that we’re fostering a generation of web developers who are building houses of cards on top of houses of cards, to solve problems that don’t fully understand, without properly addressing those problems.


  • What I Learned About The State of Online Creation While Building a Web Comics Feed Aggregator

    What I Learned About The State of Online Creation While Building a Web Comics Feed Aggregator

    Web comics were a big part of what I used to like about the old – pre-social-media – Internet. Diesel Sweeties, Penny Arcade, PVP, My Extralife, Nothing Nice to Say, Orneryboy, etc. I’m not sure exactly how it happened, but I just sort of forgot that web comics existed for a good decade plus. Sure some of these classics quit publishing and I think my sense of humour shifted away from others. Whatever the case, it really seems like web comics are back. Or at the very least my interest has been reignited.

    Recently in the past month or so, a few really great comics (strange planet, poorly drawn lines to name a couple) have popped on to my radar and I’m all in. Hard.

    Now that I’m back in I am bumping into an old problem. There’s not a great centralized location to read everything. In the past I’ve read web comics inside an RSS reader. But RSS readers never felt like the right context, their UI is too ridged, too geared towards written content or something.

    Do a search for “web comics reader” and you’re get various websites. Outdated websites from the early days of web comics. You’ll also find webtoons.com, a site that’s taking a good stab at solving this problem. I just don’t like it, it doesn’t feel right for me.


    Enter webfunnies.online. The beauty of an open internet is the ability for anyone with some development skills to build their own solution to a problem, just the way they like it.

    In the process of looking through dozens of web comics, I discovered some troubling things about the state of online creation.

    RSS

    RSS still exists as a solid machine-readable way to syndicate arbitrary content.

    However creators seem to have forgotten it exists. Less than 50% of the web comics sites I visited advertised and RSS link, even though every one of those made an RSS feed available and published it in the HTML source.

    Perhaps this is a moot point since feed readers are good at automatically discovering the

    Content Ownership

    A large contingent of content owners are publishing original content exclusively to platform like reddit, instagram and patreon. Platforms they don’t own or control. By “exclusively” I don’t mean that they are getting paid to post on those platforms (though in the case of Patreon may be). I just mean that they are posting original artwork directly to those platforms. They simply using those platforms as quick and dirty hosting.

    To put in another way, they are giving their intellectual property for free, to for-profit corporations who are using it to sell advertisements.

    This does not sit right with me. And I’m not even an artist.