HNHacker News
TopNewBestAskShowJobs

bcheung

2,193 karma · joined July 7, 2008

submissionscomments
bcheung··on Mental models around Ok-Wrapping
I created a Result style interface in Typescript and made the decisions to fix the Error to a single type for this very reason.

Result<T> instead of Result<T,E> so that it was easier to compose.

This made Kleisli composition easier since I don't have to worry about mismatched types on the Error.

You can see the code at https://github.com/brennancheung/wasmtalk/blob/master/src/fp...

bcheung··on YouTube tightens rules after David Icke 5G interview
A key difference is that the press creates its own content. With platforms like YouTube, it is user generated. There is an expectation that it is a platform that allows people to publish whatever they want.

In many regards I think "common carrier" status applies. Private companies like ISP's, telcos, and parcel delivery services are not allowed to discriminate based on the content nor the individual. This is similar in spirit to "net neutrality".

The larger a platform becomes, and the more essential it is for communication and daily business, then the more important it is that it does not discriminate.

The grey area is that platforms like YouTube both are public communication platforms, but they also curate content as well. Not sure the correct answer in that case.

bcheung··on Launch HN: Paragon (YC W20) – Visually Build API Workflows
This looks promising. The pricing seems like it only works with tasks that are very rare and high value though. Do users have the ability add their own building blocks?
bcheung··on YouTube tightens rules after David Icke 5G interview
What about net neutrality and "common carrier"? These seem to be well established goals and values.
bcheung··on YouTube tightens rules after David Icke 5G interview
Those are valid points. I think those are mostly covered already under existing legal precedents for freedom of speech. I don't see any reason they should change based on the medium.

As to your point of information that can potentially do harm, who gets to be the judge of that? That seems like it can be very controversial and subjective.

So far the courts have erred on the side of only ruling against things that pretty much everyone agrees upon and I think we should stick with that.

Having objective criteria for limits to speech is important. Otherwise we run into scenarios where people start claiming "your opinions and words I don't agree with are considered violence against me". At which point ALL speech is fair game.

bcheung··on YouTube tightens rules after David Icke 5G interview
We can't outsource our critical thinking to private companies. People need to develop the ability to think critically for themselves and not rely on appeals to authority. This can't happen if people become lazy and simply trust whatever media is out there.

This also raises concerns for me around the question of freedom of speech and censorship. I fear we are centralizing too much power into a few private companies that effectively wield more power than the government and the people for whom it represents.

I'd rather have freedom of speech even if it means tons of misinformation out there.

If and when there is some information that is unpopular but critical for people to know, I don't want censorship to be the norm.

bcheung··on Kubernetes 1.18
I found the Udemy CKA / CKAD certification courses to be good, even if you are not interested in certification. Most of the books I have come across have been good as well but Kubernetes moves pretty fast so some of the YAML files might need to have slight tweaks.
bcheung··on Kubernetes 1.18
At that scale it is probably a better option to look into something like AWS Snowball and ship it on physical drives.

At the petabyte scale there will probably be huge cost savings to using your own private cloud on your own hardware.

bcheung··on New iPad Pro with LiDAR Scanner and trackpad support
Really wish they would stop hijacking the scrolling on their website. It's absolutely horrible to navigate and makes it hard to find information. I kept scrolling and scrolling and finally had enough and just closed the page.
bcheung··on How I Start: Rust
Why "cargo init" instead of "cargo new"?

Also, wondering when Rocket will be usable without nightly. That makes me concerned that it is not stable enough.

bcheung··on Firm wielding Theranos patents asks judge to block coronavirus test
This unfortunately is par for the course.
bcheung··on Firm wielding Theranos patents asks judge to block coronavirus test
I think there is a lot to be said about social trust and reputation when it comes to brands/companies/individuals. We are seeing that it actually does work and that companies respond when they are called out on bad behavior. Maybe not always, but enough to make a difference.

This makes me believe that society has more control than it thinks and that we don't need as much heavy handed government controls that can have unintended consequences and strip us of our freedoms.

bcheung··on Rust 1.42
Sure it can be misused, but honestly, all the macros I've seen so far make sense that they are macros and they make things easier to read and write.

I'd rather have a small simple concise 1-liner, than being forced to write 20 lines of code otherwise.

In Go you have `if err != nil` on every other line it seems and that makes things hard to read. The `try!` macro which later became the `?` makes things much easier to read IMO. Especially when you have to drill into something nested.

bcheung··on Open Source Initiative bans co-founder, Eric S Raymond
I don't know about others, but personally, I find the overly politically correct "safe spaces" much less welcoming and counter to the spirit of the internet.

It feels like you constantly need to tip-toe around with every word to avoid the risk of offending someone. I'm much more bothered by people trying to police the world than someone who is rude or that disagrees with me.

In a properly functioning society, people need to be able to deal with beliefs they don't agree with and a certain amount of offensiveness. Sheltering people only makes them less able to function in society.

bcheung··on Google Kubernetes Engine is introducing a cluster management fee on June 6
I'm running my own on bare metal dedicated servers. You will need to install a few extra things (MetalLB for LoadBalancer, CertManager for SSL, an ingress controller (nginx, Ambassador, Gloo), and one of the CSI plugins for your preferred storage method). It is extra work but as a personal cluster for hobby work, I'm paying $65/mo total for the cluster. Same specs would probably be $1000/mo at a public cloud provider.
bcheung··on Highest French court reclassifies Uber drivers as employees
The ruling makes sense to me, but the criteria do not. At least in this case. It almost seems like there needs to be a new category for the gig economy employees. They are somewhere in-between.
bcheung··on Fixing JavaScript's Date (2017)
Agreed. This is probably my #1 annoyance.
bcheung··on Katherine Johnson, NASA mathematician, has died at 101
I just watched Hidden Figures last night. What an unfortunate coincidence.
bcheung··on Gilbert Strang Teaches Linear Algebra
I watched a few of the lectures in the past. I was really impressed with his teaching skills but the quality of some of the videos was really bad it really took away from the learning experience. Really wish there could be a professionally recorded version of him.
bcheung··on Discord is not an acceptable choice for free software projects
Really wish Slack did not require a backend service just to auto-invite people. Makes it more difficult to allow anyone to communicate with you on your project.
bcheung··on Gears
If only textbooks could be this good.
bcheung··on Haskell in Production: Riskbook
For people using Haskell at work, how did it happen? I'm wanting to use it at work but there is a lot of pushback and I am encouraged to use languages like Go and Python.
bcheung··on Google Brass Set 2023 as Deadline to Beat Amazon, Microsoft in Cloud
People want to develop their tech on an open platform without vendor lock-in. If they pushed an open source platform on top of Kubernetes I know I would be more interested and comfortable using them. Right now I just don't see a strong benefit over others.
bcheung··on Thoughts on Forth Programming
Forth style is great for writing but very hard for reading. I'm playing around with the idea that you use a Forth-like language to interactively develop code. The steps you perform become AST nodes. Then when you want to read it, it comes out in another form.

This is more ideal because it is more interactive and you can see the immediate result every step of the way. This is different than writing traditional code because sometimes variables and functions are not returning what you expect and you are working blind under the wrong assumption. You then need to debug it to find out where the value is not what you expected and why. Forth wins for writing in my book because you have immediate feedback which lifts some of the cognitive load and saves time on debugging.

However, the problem with reading Forth is that it forces the cognitive load of having to know what is on that stack at every moment. If you make one little mundane mistake then it completely changes the meaning of the code and you get lost. So for reading I think you need to read it in the more traditional language forms.

Some kind of IDE could let you interactively write. But once you save it, you can read it in a more traditional prefix / infix syntax.

bcheung··on France proposes upload filter law, “forgets” user rights
I couldn't really find the core arguments of the article. I wasn't really sure what it is was arguing for or against or what the exact laws are that we should be concerned about. Can someone elaborate?
bcheung··on AWS DeepComposer
Would be more interesting if the demo video wasn't such a blatant copy of Beethoven's 9th. Isn't the point to create unique original music?

Of course it is going to be able to create something if you feed it something that is already from its training set.

bcheung··on PayPal stops payouts to models on Pornhub
I've had several friends in the adult industry have their checking accounts closed at a several major banks as well. Traditional banking should definitely not be discriminating against fully legal activities.
bcheung··on How Fritzing is killing itself
I don't understand the licensing of the parts library. I wanted to use it in my own tool I was creating and I see from the parts library LICENSE.txt:

> All graphics and documentation of Fritzing are licensed under Creative Commons Attribution-ShareALike 3.0 Unported. See http://creativecommons.org/licenses/by-sa/3.0/ for the full description.

But in their FAQ they say:

> However, we do not allow the use of Fritzing part graphics in other software systems at the moment. If you think we should make an exception for you, please contact us.

What gives? Is it creative commons or not?

If you are someone who creates a part you want it to be available in every software out there. You don't want to create the same part in Eagle and then in KiCad, and then in Fritzing, and then in 5 other ones as well.

Submitting it to something that is Creative Commons has that expectation.

Fritzing is effectively saying, it's "creative commons" but we're still allowed to completely control it and prevent others from using it?

That's exactly the opposite of what CC says. WTF?

bcheung··on Truckers sue California, say new gig economy law would kill 70k jobs
It also says if you actually want to be an independent contractor... because maybe you just dropped $150K on a vehicle, then you can't write it off anymore, and you're screwed.

It bans people from having a choice.

bcheung··on Differentiable Programming Manifesto
Pardon my ignorance but I have a few questions...

1) This seems like it would only work for varying the values passed to variables in a function. Can you differential a function other than just changing some values -- like using a genetic algorithm. Seems like this is just finding the right values to pass to a function not finding a different function itself.

2) Is this limited to only continuous / ordered values? How can you differentiate logic, branching, and what other functions to call? Seems like to do so would require mapping a function to some kind of n-dimensional euclidian space / manifold.

3) Why does this need to be an extension to a language? Can't ordinary interfaces in the OOP sense or monads in the FP sense be used to wrap functions and give them this functionality for free?

← PreviousPage 4 of 30Next →