Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
willtim
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
46 ms
·
631.
▲
by
willtim
9y ago
Obviously I wanted the convenience of streaming an MP3 to the amp versus using a CD player. I disagree that all solutions to this problem need the same complexity inherent in the Sonos and that the user experience could not be improved.
632.
▲
by
willtim
9y ago
IMHO, 80's and 90's Japanese hardware gave me a much better experience than anything from a software company. For example, everytime I go to use my Sonos box, it wants to update the app, the firmware, or both. The constant softwar
633.
▲
by
willtim
9y ago
Personally I prefer Samsung's OS to stock Google. Most bad behaviour and bloat comes from third party Android apps and Samsung includes better tools to detect battery drain and deny apps background processing. They also provide other f
634.
▲
by
willtim
9y ago
The BenQ monitor used in the article appears to be just "100% sRGB" and not wide-gamut.
635.
▲
by
willtim
9y ago
Compile times are often mitigated by just using the runHaskell interpreter, or turning off optimisations. What sort of tools does Go have that Haskell doesn't? From what I can see, most Go projects just use Makefiles and text editors.
636.
▲
by
willtim
9y ago
> If you're at leisure to wait for decent libraries and tools to become available, then good for you! As I said, it depends on the area you are working in. Haskell does have some good libraries. > Haskell advocates do have a mad
637.
▲
by
willtim
9y ago
> There isn't really any evidence that Haskell is more productive than Go. Go appears to be a network services language. Although Haskell has equally good for-loops and channels, it does not have an incremental garbage collector or
638.
▲
by
willtim
9y ago
I think his point was more that it is purity rather than laziness that has been the big contribution from Haskell, despite the original research goals. A good language should allow for both strictness and laziness, as Haskell already does
639.
▲
by
willtim
9y ago
The attraction of Haskell is to build correct software in a mathematically principled way. With practice, it is also remarkably productive, certainly more so than Go when used as a general purpose language. Haskell is simply much more exp
640.
▲
by
willtim
9y ago
I agree, but Monads also simplify non-blocking concurrent programming, allowing users to think sequentially, see F# Async and Haskell IO. C# had to add Async/Await support in the compiler and I would argue it is not as pleasant as the
641.
▲
by
willtim
9y ago
It's been called the "Lisp Curse", but I don't think it's unique to Lisp. Any highly expressive and productive language is vulnerable to such social problems.
642.
▲
by
willtim
9y ago
oneOf looks like it could be used to encode sum types together with a custom string tag, but that's not the first class treatment that records get.
643.
▲
by
willtim
9y ago
It's such a shame that many of these standards ignore or are ignorant of the elementary and fundamental sum type. Instead I am left needing to employ some ad-hoc encoding using string tags or similar.
644.
▲
by
willtim
9y ago
SQL Turing completeness is generally regarded as a (relatively recent) mistake. MapReduce is only regarded as Turing complete as it is typically programmed using Turing complete languages. In both cases, the validity of many optimisations w
645.
▲
by
willtim
9y ago
Practitioners are usually concerned about what is true in practice . Weaker computational models have found great success in databases and parallel programming (e.g. Googles MapReduce) because they are easier, in practice, to reason about
646.
▲
by
willtim
9y ago
Strongly agree. With more constraints in the language, one gains greater power to reason. This is what the Ethereum creators are learning the hard way. I also think folks would be surprised with how much can be accomplished without Turing c
647.
▲
by
willtim
9y ago
> In essence, you can make reproducible builds in docker by controlling the build environment and then specifying particular versions when installing dependencies. Nix would be an excellent way to achieve this.
648.
▲
by
willtim
9y ago
Absolutely! From my point-of-view, Nix is complementary to Docker. Nix is a deterministic replacement for the apt-get commands used in the parent post.
649.
▲
by
willtim
9y ago
Those docker commands will install whatever binaries happen to be in the repository at the time they were run. Nix offers deterministic reproducible builds. A non-deterministic build is much harder to reason about.
650.
▲
by
willtim
9y ago
Surely the "clean" way to return multiple values from a function is to support returning a tuple. The methods positional parameters already essentially constitute a tuple argument. Such structural grouping of values however went a
651.
▲
by
willtim
9y ago
I can assure you that, with practice, Haskell can be a very practical language. Having IO in the types lets one reason about where the effects are happening, which is especially important when trying to solve real world problems with functi
652.
▲
by
willtim
9y ago
I think it is well known and proven that people upgrade every two years when the contract expires. My claim is only that the built-in battery contributes to this, you are free to disagree, but it is difficult to prove either way. Your ifixi
653.
▲
by
willtim
9y ago
On the X1 Carbon, you will have to remove some screws, but Lenovo provide a guide to the process: https://support.lenovo.com/gb/en/solutions/pd103715 I believe the latest X1 Carbon weighs significantly less t
654.
▲
by
willtim
9y ago
None of your ifixit links disprove my claim that "People are upgrading to new iPhones because their glued-in battery is end-of-life". > The public is misinformed about many things. No, this is different. There is a conflict of
655.
▲
by
willtim
9y ago
People have only recently found out that Apple have been slowing down the iPhones in software to lessen the load on older batteries. I also disagree that changing the battery is "easy", I suspect some people may not even realise i
656.
▲
by
willtim
9y ago
My Thinkpad Carbon X1 has a user-replaceable battery and is practically the same weight and size as a MacBook Air. So it is certainly not a compromise I agree with. The "disposable" label was a bit harsh, but there are other compr
657.
▲
by
willtim
9y ago
Upgrading isn't just about saving money. It's also a more environmentally responsible thing to do. People are "upgrading" to new iPhones just because their glued-in battery is end-of-life.
658.
▲
by
willtim
9y ago
The typical life of a Li-Ion battery is about 2/3 years or less if cycled often enough. This is at least one component that should be user replaceable. Most of us cannot justify or even afford buying a new machine every 2/3 years.
659.
▲
by
willtim
9y ago
Another counterexample to the "Apple make the best hardware" meme that is so often repeated. I find the whole concept of a disposable 1000+ dollar machine with a glued-in battery rather abhorrent.
660.
▲
by
willtim
9y ago
Have you tried specifying a smaller maximum heap size? The biggest memory issue IMHO, is that Java and the JVM do not specialise any "generic" code and so there can be a lot of unnecessary boxing going on.
More ›