HNHacker News
TopNewBestAskShowJobs

mightyham

485 karma · joined December 7, 2021

submissionscomments
mightyham··on Apple files emergency motion to become defendant in US vs. Google [pdf]
Vance did not come from big tech, he comes from VC circles in silicon valley which is an important distinction. The people he runs with quite literally call themselves "little tech" [1], and they have an agenda that does not necessarily align with the objectives of big 5 tech firms. However, I'm not at all trying to disagree with you on the fact that much of what he says and does is performative and has ulterior motives.

[1] https://a16z.com/the-little-tech-agenda/

mightyham··on Ross Ulbricht granted a full pardon
Chemical addiction is not comparable to overeating/lack of exercise. You could theoretically be "addicted" to McDonalds and still live a fairly healthy and balanced life in other respects. It's really not possible to be addicted to heroine and live a balanced lifestyle. Even though drug addicts are largely personally responsible for their actions, that doesn't make it less true that drug dealers are knowingly profiting off of vulnerable individuals and actively encourage them to ruin their lives.
mightyham··on Ross Ulbricht granted a full pardon
I'm not assuming. Your position on this issue simply lacks empathy.

If you've known anyone addicted to the list of things you mention, you should know that at some point, they are no longer "free to destroy themselves". They are continuing to destroy themselves out of a chemical or phycological necessity. The people who deal drugs or own casinos are running predatory businesses and it should be illegal, just like other predatory business practices are.

mightyham··on Show HN: TinyJs React like framework in 35 lines of code
I don't think it's that hard to understand the appeal of JSX. If you want your interface to be modeled functionally (state as input, view as output), it makes way more sense for your view to be the result of a function in contrast with having app logic "stuffed" into a mutable view template.

I'm also not sure why you are offering Web Components as an alternative because it's exactly what you are criticizing, stuffing HTML into JS. It's basically just a more limited and less ergonomic version of React class components, that comes with it's own host of unique headaches.

mightyham··on A story about restoring and upgrading a Commodore Amiga 1000
As a keyboard enthusiast, I'll add that the commadore Amiga 1000 keyboard contains the fairly uncommon Mitsumi Standard Mechanical Type II tactile switch. The mechanism uses a horizontally placed spring, which gives it a unique feeling, in my opinion, comparable to a nice rubber dome keyboard but with a hard bottom out.

[1] https://deskthority.net/wiki/Mitsumi_standard_mechanical

mightyham··on Ross Ulbricht granted a full pardon
It's clear you don't personally know anyone who has been affected by a serious drug addiction. It is devastating not just for them, but their family and everyone that cares about them. It's unbelievable to me anyone could claim that dealing drugs is a victimless crime.
mightyham··on TikTok preparing for U.S. shut-off on Sunday
Since when are social media apps considered broadcasters? In fact, section 230 legally protects social media apps from the civil liabilities of broadcasting. You're also just distracting from the actual issue. Being that, as citizens of a democratic republic promoting free speech, press, association, etc., do you think we have a right to view foreign media (including broadcasts for that matter)?
mightyham··on TikTok preparing for U.S. shut-off on Sunday
I don't really see your point. Tiktok is a video library. With the exception of private videos, anything hosted on the app can be viewed by anyone. Whether or not the app provides a personalized algorithmic selection of videos does not have any bearing on the more fundamental question of whether American's have the right to access foreign media.
mightyham··on Show HN: A browser designed to support uBlock Origin (MV2) and respect privacy
Not open source. I think I'll stick with Firefox and Brave.
mightyham··on CCL: Categorical Configuration Language
I really like the conciseness of this syntax. The language seems very well thought through.

That being said, I've been working with NixOS recently and it's made me reconsider what is useful for a configuration language. In many reasonably large software projects, where configs become very complex, config reuse (in other words templating or meta-configuration) becomes an increasingly helpful feature. Nix configs are great because it's not just a config, but a full blown purely functional language for manipulating the config. It's intuitive and powerful once you get the hang of it, and I sometimes find myself wishing I could use it when I have to work with yaml, json, etc.

mightyham··on My little sister's use of ChatGPT for homework is heartbreaking
In the context of discussing the American education system, the more relevant figure is the number of native born functionally illiterate adults which, according to that source, is roughly 14%.
mightyham··on Jimmy Carter has died
Israel's finance minister gave a speech in front of a greater Israel flag last year.

https://www.axios.com/2023/03/20/bezalel-smotrich-jordan-gre...

mightyham··on Insurers rely on doctors whose judgments have been criticized by courts
Our healthcare system is complicated by the fact America has much larger wealth disparities and more complex regulations stemming from a republican government with disparate laws among the states. Also the baumol effect: America has a significantly more developed tech and finance sectors compared to Europe which inflates the cost of less productive service based industries like healthcare.

The system can't be "just changed" because it's a very complex issue with a lot of entrenched interests. There has to be sufficient political will at the top levels of government that simply doesn't currently exist (in either the Democrats or Republicans).

mightyham··on Jimmy Carter has died
What's ironic about this is that Egypt no longer poses a threat to Israel because of these peace agreements and reliance on American foreign aid. If this were not the case, Israel likely would not be a position such that they could pursue military attacks against Gaza and war in Lebanon.
mightyham··on That's not an abstraction, that's a layer of indirection
I would actually argue that the Collections API itself is a pretty good abstraction. It is often the case that conceptually I just want to work with multiple things and properties like order, duplicates, random access, etc. are not particularly important (in fact, requiring them adds inherent complexity). It's very useful that a vast amount of the standard library data structures conform to this interface or can create data views that conform to it.
mightyham··on That's not an abstraction, that's a layer of indirection
Yup that's the one. Thanks for linking it.
mightyham··on Spotify Shuts Down ‘Unwrapped’ Artist Royalty Calculator with Legal Threats
I would be more interested in YouTube music if it allowed users to play the audio of any video. Right now, a video has to be tagged by the creator as music for it to be made available on the app.
mightyham··on That's not an abstraction, that's a layer of indirection
I forget which programming talk I watched which pointed this out, but one extremely common example of this in Java is recreating subsets of the Collections API. I've done this before, heck even the Java standard library is guilty of this problem. When a class has a full set of get/put/has/remove methods, it is often not actually hiding the complexity of its component data structures.
mightyham··on Translating 10M lines of Java to Kotlin
Kotlin's null safety is a huge win, but the language has it's own set of flaws such that I try to avoid using it.

The language's "declarative style lambda syntax" makes code overly-complex. Every library is basically it's own DSL and every lambda context has it's own set of specialized keywords. If I write `test { somthing(value) }`, depending on the context, `somthing` could be invoking a higher-order function, calling a method on an object that the lambda is extending, or calling a static method. The muddling of data/declarations and procedures, makes jumping into new codebases confusing and time-consuming. Rich Hickey has pointed out in numerous talks that syntax itself is complex because rules and order are complex, but in languages we generally trade a little complexity for terseness. Kotlin encourages this trade-off far too much in the direction of complexity, and the language would be almost unusable if not for it's IDE support.

Getting to the root of the previous problem is that method extensions in general feel like an anti-pattern. Without introspecting a method call, it's not possible to tell where that functionality is coming from. It's a huge amount of added cognitive strain to have a classes functionality split into various files, possibly across various code bases.

Another problem is coroutines (oh joy, another new DSL to learn). By now, it should be known, from languages like Go and Erlang, that preemptive lightweight threading is almost always going to be better than cooperative. It avoids function coloring, keeps throughput of applications more consistent, and is generally easier to reason about. Java also now has preemptive lightweight threading via virtual threads, but because much of the Kotlin ecosystem is reliant on the coroutine API, it don't get any of the ergonomic benefits.

mightyham··on Show HN: WebGPU Tech Demo
You can enable SSAO (Screen Space Ambient Occlusion) in the demo settings.
mightyham··on WebGPU Tech Demo
Neat demo, but it runs pretty poorly on my 1650 Ti. It looks like the framerate is being displayed in the wrong unit, so I'm not sure exactly how fast it's rendering. Also glad to see a TAA toggle, when it's on, the ghosting artifacts are pretty atrocious.
mightyham··on Three mistakes from Dart/Flutter's weak PRNG
Dart is really not much different from a PWA/Ionic though: the language requires bindings to use native APIs; it's runtime is not native to any platform (where as most platforms do have native web runtimes); and it's rendering system doesn't support native widgets (in fact, it currently uses Skia which is the same rendering library as Chrome).
mightyham··on Three mistakes from Dart/Flutter's weak PRNG
For clarity, I'll admit that I do not have industry experience with Dart. I have built a medium sized mobile application with it, and have spent a pretty good deal of time digging into Flutter's architecture and reading it's source code.

If you are debating the statement I made: "It's clear just from using the language that it was designed as a more 'serious' Javascript replacement", it's simply a fact that the Dart language was originally designed to be a Javascript alternative in Chrome, and the language clearly takes a lot of inspiration for Java and C++ which are widely used at Google.

> Maybe I am confused. We are comparing Dart to what again?

I'm comparing it to other garbage collected languages. I don't think Dart really even has a backend story, but in that case I would compare it to Go, any JVM language, and Javascript/Typescript. For frontend applications I'm comparing it to Javascript/Typescript.

Maybe you could tell me what about my comment is confusing, but I'll rephase it and add some more context. From everything I've read, the Dart team at Google is small an insular. Google has a nasty reputation of cutting niche products and has been doing lots of layoffs in recent years. Even though Dart has an good UI library, there are numerous attractive alternatives that are more familiar and popular. Putting all that information together, I would not choose to use Dart for basically any new project.

mightyham··on A C++ Mixin System
While I've never really found much practical use for mixins, it is fairly easy to create a runtime system for them in Java. Any interface can become a mixin simply by storing state in a static global hashmap with `this` as the key to the map. Specifically for the map, I would use `Collections.synchronizedMap(new WeakHashMap<>())` so that the map is thread-safe and allows mixin instances to be garbage collected.
mightyham··on Yi Peng 3 crossed both cables C-Lion 1 and BSC at times matching when they broke
You seem to be under the assumptions that the rules based international order is a real thing that is being thwarted by Mafia regimes and right wing ideology. First, America is a Mafia regime, under Democrats or Republicans. Many of the biggest Biden donors in 2020 have switched to donating to Trump, not because of ideology, but because they think Trump will be better vessel for their interests. And second, the rules based international order never existed in reality and never will exist because large force welding states will always have disagreements that will sometimes result in violent conflict.
mightyham··on Niantic announces “Large Geospatial Model” trained on Pokémon Go player data
While I have no way to validate this, I highly suspect that the routing algorithm is also subtly manipulated. There is a route I drive with regular frequency that contains a roughly 20 mile section of two mostly parallel roads, one for through traffic and one for local. Every single time I drive through, Google routes me to the local traffic road. I know for certain the local road is slightly slower and it's also simply incorrect. The only way it makes sense is if it's a bug, or my hunch is that Google weights the route a little higher because it goes by a bunch of businesses that pay for advertising.
mightyham··on Yi Peng 3 crossed both cables C-Lion 1 and BSC at times matching when they broke
Just a reality check: the United States is currently funding and providing military equipment to Israel, who is carrying out an ethnic cleansing in the Gaza strip. Apparently, democratic governments also have a problem following the rules.
mightyham··on Show HN: Nova JavaScript Engine
I'm curious why you think JIT will not become necessary. My impression was that optimizing JIT compilers will basically always be multiple times faster than an interpreter.
mightyham··on The Onion buys Infowars
It's not that simple though. The initial guilty verdict was not even the decision of a jury, but the result of a fairly abnormal procedural decision by the judge. There was then a follow-on hearing to determine the amount in damages, where Jones' lawyer "accidentally" sent loads of evidence, not required by discovery, directly to the prosecution. The entire suit against Jones is filled with interested parties and corruption. It is definitely not a good example of better arguments prevailing.
mightyham··on We Know One Big Loser in This Election: The Mainstream Media
The idea that much of the press is just doing their job seems pretty naive. There are tons of incredibly interested parties when it comes to controlling the focus and narrative of press coverage.
← PreviousPage 5 of 9Next →