All 177 Comments

re: Class vs Function based programming simplified
Sorry to nitpick, but your example for an impure function i...
re: Is “Defensive Programming” actually healthy?
No, I would not add runtime checks to this. If you call the...
re: Is “Defensive Programming” actually healthy?
For me there is a distinction to be made when it comes to d...
re: Is “Defensive Programming” actually healthy?
@yaser the compilers' job is to check syntax and such ...
re: Using github repos as Haskell dependency
Just as a side note, when you are using stack, you can add ...
re: Introduction to property based testing
Ah, yeah, I missed the extra space in the Semigroup instanc...
re: Introduction to property based testing
I think you have a typo in your Monoid instance. The string...
re: What’s an unpopular software opinion you have?
Type coercion is fine. Implicit type coercion is the worst...
re: What's a git tree?
It's not a tree, but a DAG (directed asyclic graph). Every ...
re: Prevent SQL Injections
No! Never sanatize your input! You will forget edge cases. ...
re: What the heck is polymorphism?
Yeah, you can emulate parts of it with ad-hoc polymorphism,...
re: The 7 Most Popular DEV Posts from the Past Week
Yay, finally made it :)
re: Nondeterminism in purely functional languages?
Reverseability for example. Haskell has STM (software trans...
re: Nondeterminism in purely functional languages?
Purity is not about state, it's about referencial transpare...
re: What the heck is polymorphism?
Correct 👍
re: What the heck is polymorphism?
No, as you can see the forall is in the parenthesis, the sc...
re: What the heck is polymorphism?
Yes, I've added a paragraph about the ST trick there. Anoth...
re: What the heck is polymorphism?
Call what a union? I don't see any way a C union could be c...
re: What the heck is polymorphism?
No, I haven't 😅
re: What's your Wifi's name?
Currently it is "NSA surveillance unit #15" Before it was ...
re: Is Haskell bad for FP?
You can do functional programming in most languages. The go...
re: Is Haskell bad for FP?
Not mine, because I mostly write internal tools. But other ...
re: Is Haskell bad for FP?
I will have to look into that. Just put NoImplicitPrelud...
re: Is Haskell bad for FP?
yeah, stack and cabal is a unfortunate historic development...
re: Is Haskell bad for FP?
The problem with Elm is the incredible religious community ...
re: Is Haskell bad for FP?
Just to leave my two cents here 😅 Backwards compatibility...
re: How does a Map work?
Yeah, Haskell uses balanced binary trees for example
re: Using Smart CSS to Time Your Wonderful Newsletter Popup
Or you could just provide an RSS feed sigh What happened to...
re: A Good Video for Haskell Monad
Monad means neither pure nor impure. The Monad is the essen...
re: Typeclass(Interface) is Kernel Concept of Haskell Functor, Monad These Weird
Just a small side note, in the class declaration you don't ...
re: What is your "Coder/Language Fit"
Haskell, because I love to write short, concise and elegant...
re: Writing a Fast Sudoku Solver in Haskell
Really nice article, great to see some more haskell posts h...
re: Is 2019 the year of TypeScript?
The main problem with typescript is that it is becoming a h...
re: How You Can Find Good Libraries For Your Projects
Another important thing is: Do you unterstand how the libra...
re: Haskell, Vectors, and Implicit Knowledge
Have you tried "Haskell from first Principle"? I really lik...
re: When programming on a laptop: Mouse or Trackpad?
As mice (and excessive use of trackpads) cause wrist pain f...
re: Clarifying GDPR
The question is if your analytics collect personally identi...
re: Clarifying GDPR
The most important thing that I always see in the wild, is ...
re: I can't understand the twiceOptional function from Data61 fp course.
You are wrong about the partial application, it is like th...
re: A big rewrite
You should avoid complete rewrites at all costs. Try to fin...
re: The Stack is Irrelevant
The point is not I can work on a stack, but if I want to us...
re: What's the Betamax of your field?
Yeah, i agree so hard. I am always so dissapointed when a b...
re: Understanding the Fold Operation
It depends on your view on it. If you name the parameter, y...
re: Understanding the Fold Operation
There is no need to name inputList. f x = x |> g ...
re: I pay $1 every hour I spend working on open-source
What do you use the database for? Looking at your site, i s...
re: I pay $1 every hour I spend working on open-source
How do you manage to pay 50$ per month on hosting? That is ...
re: Know When to Fold 'Em
I don't think the full pointfree version of myAny is less c...
re: What's a useful programming language feature or concept that a lot of languages don't have?
Monads. Seriously! They make composing function so easy: Fo...
re: What's a useful programming language feature or concept that a lot of languages don't have?
I don't like when languages call abstract data types "union...
re: What are Static Site Generators?
My favourite static site generator is Hakyll. The amazing t...
re: Space, The Final Deployment!
Mine yes, our university already did one (that died after 3...
re: Space, The Final Deployment!
Cool! We are on the same rocket! I am from the MOVE-II team...
re: Which language would you want to see take over the world?
Yes, but it will take time. For now we have Idris, Coq and ...
re: Haskell by example - Utopian Tree
Yeah, but that does not show off haskell that well :D
re: Haskell by example - Utopian Tree
In my opinion the opposite is true. Having to name and assi...
re: Papers We Love!
I really like papers about type systems or programming lang...
re: Relearn You a Haskell (Part 1: The Basics)
Just a minor nitpick, not is not a keyword, but a function
re: Basic Functional Programming with Javascript
Your "normal" function is in fact pure too: the data it is ...
re: It is OK to keep random things in a single monorepo
git subtree split is a very helpful command
re: Which Linux Notebook do you recommend?
On the high end, I am absolutely in love with my Lenovo Yog...
re: Which language would you want to see take over the world?
A version of haskell that has dependent types. It would be ...
re: You don't need HashiCorp's Vault
You have to use a cloud provider. You can't just a get a fe...
re: You don't need HashiCorp's Vault
I tend to disagree. The point of Vault is to not be depende...
re: Store Passwords With KeePass
I want to add, you do can sync your passwords if you want. ...
re: What's the difference between a library and a framework?
I agree, a framework dictates the architecture of your code...
re: Understanding Observables
Yeah, I saw the attribution. Just a side note, the fn does ...
re: Understanding Observables
Sorry for the confusion, I did not mention that map has to ...
re: Language Idea: Limit custom types to three arguments
There is a very good rule of thumb, the zero, one, infinity...
re: When Math Fails You
Thank you! I was actually about to write something similar....
re: Append-Only Feeds: A Better Way To Order Feeds
Bit I do check every few hours and the timestamps are not i...
re: Append-Only Feeds: A Better Way To Order Feeds
Yeah, I just want to be able to get a chronological timelin...
re: Using Aliases to Speed Up Your Git Workflow
I wouldnt use bash aliases for the commands, just for git i...
re: How to select a front-end framework?
Cycle.js, because it's completely different: no magic dat...
re: Should browsers still allow users to disable JavaScript?
It's not hard to serve the script from your domain instead,...
re: Should browsers still allow users to disable JavaScript?
Just for performance reasons, you shouldnt require Javascri...
re: I'm planning to ditch my MacBook and move away from laptop computing
I have to say I really like my Lenovo Yoga X1. I dont need ...
re: MongoDB has no use case
There is no such thing as a schemaless database. Just datab...
re: It's time for Typescript Native
I am not sure why you would want Typescript. Sure it's bett...
re: The not fancy CLI output of pnpm
Mmmh, this first MPR image looks vaguely familiar :D
re: What are the hardest programming languages you have ever learned?
x86 assembly is pretty messy, but Intel Microcode (to write...
re: Pragmatic types: what are types?
Not sure why you avoided the term set, it's exactly what a ...
re: Challenge: Write the recursive Fibonacci algorithm in a different language.
I also have the boring tail recursive version here: fib ...
re: Challenge: Write the recursive Fibonacci algorithm in a different language.
I have haskell here with the best form of recursion: Self-r...
re: My first, shiny Docke"R" image
Yeah, but that still makes the containers run on Linux and ...
re: My first, shiny Docke"R" image
Your post is a good introduction, but sadly the first sente...
re: Security Tips for a PHP Application
It's so sad that it still is. I mean it's a solved problem,...
re: Has type safety gone too far?
You can't pass res directly to doSomething because the type...
re: Has type safety gone too far?
Yes, thr big problem with null is that you can't see based ...
re: Has type safety gone too far?
The problem is, that null has the same type as the thing yo...
re: Static Sites vs CMS
Totally agree. Static sites a far superior to a CMS. I have...
re: Flat node_modules is not the only way
We (the maintainers of Cycle.js) are currently migrating fr...
re: What are the alternatives to unit tests?
My take on unit tests is to avoid them. Write your software...
re: What's your opinion on Microsoft's GitHub Acquisition?
The point is, a fork in the Github sense is to provide chan...
re: Who's looking for open source contributors? (June 4 edition)
I recently started Media Goggler. It's a media server writt...
re: What's your opinion on Microsoft's GitHub Acquisition?
There are many reasons, but I think the two most important ...
re: What's your opinion on Microsoft's GitHub Acquisition?
The linux source was never on GitHub. The repo you linked i...
re: I asked my first StackOverflow question
My first question was three years ago. I was transitioning ...
re: What Is Your Main Language?
You may want to take a look at Cycle.js if you are interest...
re: What Is Your Main Language?
Haskell is great, the strong type system pushes al your err...
re: What Is Your Main Language?
I have a main language per problem set. Typescript for fr...
re: Everything That's Not Tested Will Break
The problem with unit tests is that even 100% test coverage...
re: Everything That's Not Tested Will Break
In my experience, you dont need unit tests if you have a so...
re: Explain Time Complexity Like I'm Five
I wrote an article about this in fact: dev.to Basicly assu...
re: What is your favourite JavaScript framework?
Cycle.js. When I was looking for a new framework for a proj...
re: Often neglected skills new devs should learn?
Having a toolbelt of languages that you keep "maintained". ...
re: 6 Reasons to use Vue.js
you can build something simple very quickly Way to often...
re: PWAs are going to eat the (app) world
I know we are past that point, but this is not a good thing...
re: PWAs are going to eat the (app) world
I hope this doesnt happen. People selling a website as a mo...
re: Don't ALWAYS quick-return from functions
The code is not really a good example as you shouldn't use ...
re: Handling errors with Either
Either is a monad. As well as Maybe :)
re: How does a Map work?
Yeah, linear hashing is a simple but rather weak avoidance ...
re: A Major Announcement for the DEV Community
You should take a look at the dat project.
re: What does "Big-O notation" mean anyway?
I did not mean to imply that the computational complexity e...
re: What does "Big-O notation" mean anyway?
Yeah of course, small typo
re: How dev.to dynamically generates social images
Wouldnt it be a lot simpler to have an SVG template and fil...
re: Why I always recommend Arch Linux
I had several occasions where the Manjaro and Antergos devs...
re: Please Reinvent The Wheel
It's funny, because I was about to write this exact post my...
re: Who said that VIM cannot compete with IDEs?
I works quite well actually. I use LanguageClient-vim and t...
re: Who said that VIM cannot compete with IDEs?
For me, Vim is the only editor I can use. I have problems w...
re: What are some courses I should absolutely take in University as a Software Developer major?
I have a few mechanical engineering courses. My absolute fa...
re: What having a programmer burnout at age 21 feels like
I'm in a similar situation. I'm 20 and while I dont try out...
re: Learning Functional Programming
I dived heads first (no prior FP experience) into Haskell a...
re: Getting your feet wet with OCaml
I learned ocaml in university, I've read the article and I ...
re: Best way to copy an object in JavaScript?
I would simply use recursion for a deep copy: function d...
re: What's your favorite useless repo/package/website/etc?
I really like sl, it displays a steam locomotive when you t...
re: Why I always recommend Arch Linux
I had issues with them fucking up their package signing key...
re: Explain Abstractions like I'm five
Imagine you build a shelf for your toys. You draw a sketch ...
re: Is testability a reason to change your design?
For me it's 100% yes for testability. But not for actually ...
re: Why I love Javascript
Javascript in itself does not run anywhere. You always need...
re: Why I always recommend Arch Linux
I know many first time users that tried ubuntu, got annoyed...
re: Architectural decisions that you regret...
I absolutely agree with "magic". Thats the main reason why ...
re: Why I always recommend Arch Linux
Yeah, I switchrd to pacaur myself in the meantime
re: I'm planning on creating a website with NodeJS, What can I use to future proof it?
The glorified text field was refering to no type system tha...
re: I'm planning on creating a website with NodeJS, What can I use to future proof it?
Do yourself a favor and avoid all those three. Starting fro...
re: Merging Arrays in Javascript
Yes of course, always write simple first, then measure perf...
re: Merging Arrays in Javascript
Simpler yes, faster no. If you look at algorithmic complexi...
re: What are you working on for Open Source?
As a core team member of Cycle.js I can say that we always ...
re: Explain nodejs to me like Im five
Imagine you have a toy (browser). This toy has a crappy lcd...
re: What's your favorite tool or library that few others have heard of?
Markdown Doctest It runs code examples in your README/all ...
re: Why I always recommend Arch Linux
The point I am making is that Arch does not break. In two y...
re: Why I always recommend Arch Linux
Only for newcomers, because it comes with a graphical insta...
re: Global Mutable State
The language is not the reason for global state, it's alway...
re: Why I always recommend Arch Linux
Yeah, for Servers, I usually use Ubuntu Server. My Arch rec...
re: Why I always recommend Arch Linux
That sudo was a typo, thanks :) Will take a look at pacaur
re: Design Patterns: Strategy Pattern
No, Java is limited as a language. OO is verbose and leads ...
re: Design Patterns: Strategy Pattern
Always when I see Java code and "best practices", I always ...
re: My thoughts on the JavaScript ecosystem
I'm always open for critique, as long I can give it back :)...
re: My thoughts on the JavaScript ecosystem
I would never use Javascript. It's not a good language. Let...
re: An Examination of Fizzbuzz
Still my favourite implementation, because it is completely...
re: Explain WebSockets like I'm five
You have a friend, that always has the newest gossip. Becau...
re: Recomendations in choosing a Linux distro
If you really want to learn to use Linux, I would use Arch ...
re: Thinking about going with PreactJs for dev.to
Isn't programming evey view twice a whole lot more work? Wi...
re: Thinking about going with PreactJs for dev.to
I recommend watching Andre's introductory course, where he ...
re: Thinking about going with PreactJs for dev.to
Why not use a second Node server just for SSR? That's what ...
re: Thinking about going with PreactJs for dev.to
I love Cycle.js, because it allows to be used for any appli...
re: Moving from a Java Monolith to Microservices at Squarespace
This article sums it up pretty well. Most developers dont k...
re: Moving from a Java Monolith to Microservices at Squarespace
Payment data in MongoDB, a database which does not garantue...
re: Roughing It Dev Style: Coding Without a Computer
On Android thats a lot easier. Just install Termux and open...
re: Front End Javascript, Angular, React, etc, what and where to start with?
My current favourite, after trying Angular2, React and Vue ...
re: What is SQL injection and how do I avoid it in Go?
Is database/sql ecaping or placeholders with precompiled qu...
re: SLAP Your Functions!
the first could be written: def tweet_to_html(tweet): ...
re: SLAP Your Functions!
Just extracting a commented part of a function into another...
re: Why NoSQL, and what are some of the options?
Similarly, in the day and age of data coming in from a var...
re: Functional Reactive Programming in Rust
When will people learn that React is NOT FRP. If you want t...
re: Using requestIdleCallback to create a less janky infinite scroll
How did you calculate distanceFromBottom?
re: Dynamic Programming Series - Introduction
You forgot that C++ has tail call optimization. This means ...
re: Javascript's Persistent Popularity: No one seems to particularly enjoy the language, but everyone is using it
I was talking about Javascript, not Typescript. Those are d...
re: 30 hours in Unity
I would suggest you change IDE to Editor in your article to...
re: Javascript's Persistent Popularity: No one seems to particularly enjoy the language, but everyone is using it
What I mean is that Elm is too limiting. You are forced to ...
re: Javascript's Persistent Popularity: No one seems to particularly enjoy the language, but everyone is using it
Elm is not a good language. You are at the mercy of it's cr...
re: Javascript's Persistent Popularity: No one seems to particularly enjoy the language, but everyone is using it
Im one of the people that cant understand the javascript hy...
re: Describe your typical work day.
Wake up (hopefully) Go to University Lectures Review Code f...
loading...