Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
samhh
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
8 ms
·
31.
▲
by
samhh
5y ago
I've just gone through this process over the last couple of years. To be honest, the most effective learning tool for me was dedicating my free time for a little while to learning Haskell. It's a higher upfront cost but a huge pay
32.
▲
by
samhh
5y ago
I think fp-ts exists because TypeScript is entrenched with a strong job market. If that weren't the case most users would just use something like PureScript.
33.
▲
by
samhh
5y ago
Libraries like io-ts and zod take care of this for you. For io-ts for example you just need to define a type guard function that asserts "x is Y" and away you go, you've got a runtime codec; it knows how to "decode"
34.
▲
by
samhh
5y ago
I struggled introducing fp-ts into my last team but io-ts was a much easier sell, as was fast-check. It's a lot easier to get buy-in when you can demonstrate that it will reduce bugs thereby improving the customer experience and reduci
35.
▲
by
samhh
5y ago
I think that was replaced by Rectangle.
36.
▲
by
samhh
5y ago
Something this doesn't tell you is that summers in London for example are awful because our homes have historically been designed to trap heat.
37.
▲
by
samhh
5y ago
The unread count in the notification doesn't update if you view your emails not in the mobile app.
38.
▲
by
samhh
5y ago
If the issues with it aren't too obvious you can trade it into Apple claiming it's in good condition. That's ethical as far as I'm concerned given the issue is their own fault.
39.
▲
by
samhh
5y ago
Oh damn, who laid off their PS team? First I've heard of that.
40.
▲
by
samhh
5y ago
I've successfully looked at commits years old to understand the context around a feature/bug that was confusing myself and a product owner. This context is where small, well-detailed commits come in so handy beyond just the initia
41.
▲
by
samhh
5y ago
One could argue that the effectiveness of propaganda that stems from this viewpoint proves its premise. Whether that makes propaganda of any given form justifiable is another matter.
42.
▲
by
samhh
5y ago
You have a container with `a` inside, let's call the container `m`. You have `m a`. You can provide a function with the type signature `a -> b`. With this we run the function underneath `m` and map `m a -> m b`. Concretely this m
43.
▲
by
samhh
5y ago
How can you say it's easier for humans to reason about when your test subjects almost all exclusively got started in programming with imperative programming? It's a slightly biased data set.
44.
▲
by
samhh
5y ago
Function application pipelines and function composition are closely related. Here's a "pipe" in Haskell: \x -> h $ g $ f x At a certain point you realise that in many cases seeing the `x` is not just useless but needless v
45.
▲
by
samhh
5y ago
I've had a great experience learning Haskell with Exercism. Also unaffiliated.
46.
▲
by
samhh
5y ago
Vanced is also really good. Supports YT Music too.
47.
▲
by
samhh
5y ago
Perhaps, but I think it can be argued that it encourages more consumerism. The market for second-hand selling may encourage those sellers to buy more new. Fundamentally the idea of an everchanging fashion is problematic, not just environmen
48.
▲
by
samhh
5y ago
I use offlineimap* which allows you to optionally sync in one direction. I'm not sure what happens if the remote emails are overwritten though. * https://github.com/samhh/dotfiles/blob/master/home&#x
49.
▲
by
samhh
5y ago
Hackage (Haskell) is down as well: http://hackage.haskell.org
50.
▲
by
samhh
5y ago
All looks orange now, but "degraded performance" is a cheeky way to describe "everything is on fire".
51.
▲
by
samhh
5y ago
The first R is reduce. The second is reuse. Our cultural obsession with fashion completely bypasses each of these.
52.
▲
by
samhh
5y ago
PureScript's build system is very good (Spago), and the language is too, but it is tougher to learn than Elm veering much nearer Haskell.
53.
▲
by
samhh
5y ago
This is definitely the best option in the TS ecosystem but it's not meaningfully implementing typeclasses from the perspective of the end user. There's no single `fmap` for example, instead you'll be using dedicated `Array.ma
54.
▲
by
samhh
5y ago
If you're willing to get your hands a little dirty you may like bangin: https://sr.ht/~samhh/bangin/
55.
▲
by
samhh
5y ago
Logically they're the same, they're isomorphic. It's just about ergonomics, readability, etc.
56.
▲
by
samhh
5y ago
There are many application states in which `null` could mean "not got the data yet" and/or "there is no data". Just use an enum, it's much more expressive.
57.
▲
by
samhh
5y ago
It can just as easily mean that nobody knows the solution to its novel problems yet. It potentially means nobody wants to touch it in a few years once the largest problems have revealed themselves en masse. If something has hype it's w
58.
▲
by
samhh
5y ago
You can do the same in TypeScript with newtype-ts. I'd recommend it for the same reasons you'd use them in Haskell et al.
59.
▲
by
samhh
6y ago
Does anyone know of some public repositories which are good examples of good commit hygiene as described?
60.
▲
A quick guide to Git commits
(samhh.com)
1 points
by
samhh
6y ago
|
1 comments
More ›