Recent submissions

Comment · 5 years ago
Widgets are essentially data classes, simple wrappers for configuration information. They need to be classes because of the way the internals of the framework works. And no one is hoping you don’t use inheritance. The recommended style is very clear. You’re free to do things however you want but you have to take responsibility for doing things in a weird way.
Comment · 5 years ago
The canonical way of doing things in Flutter is composition NOT inheritance. This is the whole point of Widgets. Inheritance is used in ways that generally make sense and don’t result in huge complex inheritance trees.
Comment · 5 years ago
I think the conversation around OO suffers from the same problem that any major engineering trend suffers from: namely that eventually, the concept gets conflated with the way that enterprise software and overpaid consultants completely fudge the implementation of the concepts. Consultants get paid big bucks trying to convince your company that you need to be doing microservices or OO or nosql or whatever the latest fad is and that you need them to help you implement it. It’s not based on any real technical need. It’s just institutional FOMO.

OO has it’s place in the space of possible patterns to choose from based on the kind of solution you need. I think these overarching claims of superiority are missing the point completely. I personally like a combination of function and OO concepts that can work synergistically together and play the kind of role that they excel in individually.

Comment · 5 years ago
Yes, it took me two or three years to have any sort of valid opinion on TDD or SPA vs plain html and where each would be appropriate and in what quantity. Watching talks helped me a lot. Programmers really like giving talks.
Comment · 5 years ago
The hardest part I think is knowing that you should ignore all of the noise around different practices paradigms, and frameworks and focus on fundamentals. The best way is to look through and try to understand some very well written open source projects.

I feel like I stumbled on doing this but for many, I think they probably just bumble along building web apps and taking much longer than necessary to understand fundamentals. You have to expose yourself to high level professional code and absorb as much as you can from it otherwise you’re in danger of plateauing.

Comment · 5 years ago
I hear this a lot and I understand people make mistakes trying to rush but this is not accurate for me. I can absolutely will myself to think faster. Maybe this comes with experience doing some meditation but when I have a difficult problem where the solution is not immediately obvious, I can sit in my chair or take a walk and focus very intensely on the problem. I get my whole mind to just focus on this one thing and I keep my mind there without getting distracted or daydreaming. I don’t try to have any kinds of thought in particular. I just focus on the problem. After doing this for a certain amount of time I will come up with my conclusion.

I could do this over a longer period of time and create much less mental strain but when I’m in a time crunch, it’s very useful.

That said if the problem is actually beyond my reach and capabilities I won’t get much of an answer.

Comment · 5 years ago
Touche. It’s so hard to get past the buzz in crypto because people are making way too much money on the price of tokens. It’s so distracting. I think we’ll get there eventually.
Comment · 5 years ago
It’s happening in the tools for thought community on Twitter. It’s more about the software layer and innovations in human computer interaction design. A lot of the ideas from the 60’s and 70’s are having a resurgence like Memex, backlinks, moldable dev environments etc.
Comment · 5 years ago
Yes, it’s just old companies like IBM trying to ride a buzz wave. The whole point of a blockchain is that it’s public and verifiable.
Comment · 5 years ago
I really want something that’s strongly typed but doesn’t require code generation like protobufs do. Yaml doesn’t do it for me. The closest I can get is putting the type guarantees in the database and using GraphQL.
Comment · 5 years ago
Exactly. This is no fundamentally different than a traditional time-stamping service. If the time-stamping service is compromised, all of the previous timestamps are invalid.

The only alternative to a blockchain is to publish the latest hash widely in a verifiable place such as in a well-known newspaper.

Comment · 5 years ago
In case you’re interested the two bitcoin forks BCH and BSV have unlimited block size and so energy/transaction validated can scale very well. Eventually all forks will have to rely on transaction fees as the block reward has a halving schedule. If something like BSV succeeds the hash rate and thus energy consumption will be a complicated combination of transaction volume, and variable transaction fees. It will essentially be a race to the bottom to see who can provide the cheapest transactions while still being profitable. I think one should expect much higher energy efficiency than something like Visa just from pure scale and the intense competition.
Comment · 5 years ago
It also depends on the available market for asics. In bear markets, asics are very affordable as miners go out of business but the price can go up quite a lot in bull markets which affects the profitability of buying new machines.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton