For the best experience on desktop, install the Chrome extension to track your reading on news.ycombinator.com
Hacker Newsnew | past | comments | ask | show | jobs | submit | history | more hangonhn's commentsregister

Flash was a poorly written piece of software. It had numerous bad memory leaks and a CPU hog. It was never allowed on the iPhone probably because it would have drained the batteries really quickly. On top of that HTML5 was starting to catch on and could eventually do everything Flash could and do it better without the memory leaks and poor CPU usage. I have the very unfortunate claim to the title of being an engineer on the world's biggest Flash/Flex app. The memory leaks were so bad that Adobe advised us to just restart the app periodically -- despite Adobe marketing Flex as enterprise ready. We found compiler bugs for Adobe. Adobe and Jobs didn't set out to destroy it. Macromedia wrote bad code that performed poorly and it wasn't worth the effort for Adobe fix it once HTML5 won.


None of that matters for the kind of creative work the grand parent likely had in mind.

Perhaps there was a memory leak in Unidentified Flying Assholes or the endless line of punch-a-celeb games or the thousands of stick fight productions and so on, but no one cared and enjoyed them immensely anyway. You could do something cool without ever learning about things like memory leaks or vulnerabilities in the underlying platform.


> None of that matters for the kind of creative work the grand parent likely had in mind.

Some of that did, at least for how that creative work was almost exclusively delivered to the world. Those bugs were not just excessive resource usage and instability, they were incredibly often exploitable security flaws that were regularly weaponized against a huge swath of internet users. The ubiquity of the Flash browser plugin was simultaneously one of the greatest strengths of Flash as a creative platform and one of the greatest risks to the average person browsing the web in the 2000s.

The plugin needed to die. Unfortunately the Flash community was so firmly built around the web plugin as their distribution method of choice (presumably because many of us were browsing animations and playing games at work/school where we couldn't necessarily download and run arbitrary .exes) that the plugin was more or less a diseased conjoined twin, and when it died the community didn't have long left.

Compare this to Java where the death of the browser plugin caused a number of badly designed banking sites to have to be redesigned in a less stupid (but quite often still very stupid) way but the community as a whole continued on without huge disruption. The browser plugin was just one of many places Java existed, it wasn't the dominant focus of the community.


Yeah, it's kinda crazy people are brushing over the security issues. The nostalgia is huge, I get it, but Flash was terrible for browsing the internet at the time.


Can you name some renowned such creative works that were "weaponized against a huge swath of internet users"?


I think they’re referring to the flash plugin itself. It enabled a vast amount of creative work and it enabled vast exploitation of users’ browsers. I worked as a tech at a consumer-focused computer store from about 1999-2005. It was a wild wild world back then. The vast majority of our time was spent removing viruses, browser toolbars, Bonzi Buddy and friends, and helping people understand how their online banking passwords got stolen by the shady porn site they like so much.


The core ideas of Flash remain unparalleled even now.

- Vector drawing and rendering for extremely fast performance and file size

- Visual authoring tool that invited creative, non-technical people to the party

- Deep support for managing state changes over time

- Gradual ramp of complexity that balanced ease of entry without overly constraining expertise

Were most Flash apps slow and buggy? Yes

Did Flex have tons of bloat and memory leaks? Yes

Did Flash create a cambrian explosion of creative and fun projects that inspired a generation of young people? Yes


It was not a CPU hog - this is a myth that needs to die The flash runtime was pretty modest.

Now, the code people wrote was CPU hogs, because lots of non coders were writing code and they would do anything to make it work. The Flash runtime was not causing the Punch the Monkey and to peg your CPU, it was because the punch the monkey ad was fucking awful code.

All those Flash programmer went on to write the first wave of HTML5 stuff which, shock horror, where vastly CPU inefficient.


It's really interesting because that's something they definitely don't teach you when you first learn to drive. Growing up in Florida, I learned to pull over and turn on emergency blinkers if the rain gets bad enough. The reason I know to do this is because I saw other drivers do this on the highway and realized that's pretty wise. It's tempting to imagine that a younger version of me would have been smart enough to realize this on my own but I think most of us learn a lot by observing the behavior of others. Or maybe I would have learned eventually after a few close calls with skidding. Or maybe I would have never learned until it's too late. I wonder if the different responses to averse conditions you've observed is a function of the different experiences we've had as drivers. You might be a more experienced driver than some of those around you.


And pulling off through a patch of heavy rain is one thing. There are a lot of issues with pulling off in heavy snow unless you can really navigate off the highway to a safe location. Sometimes there aren't great solutions.


Hazard lights are almost never used by folks when driving, when you really should turn them on anytime the conditions are forcing you to not go the speed limit, IMO. The other lizard brains will see blinky lights and hopefully put down their phones so they don't rear end you.


People mostly only turn on their hazards when they're a hazard to other traffic (which is the whole point, IMO) Even if you're the slow guy on the road your speed still probably doesn't warrant this hence why you mostly only see it when people are going a speed of zero.


I would hope the other folks would recognize that conditions are such that you're slowing down rather than have a bunch of arbitrary blinking lights on the road.


It's funny because when I lived in Texas, we just turn on windshield wipers on full blast, put the hazard lights on and drive around at 15mph. (This would have to be an epic downpour though.)

The only time people stopped was when it was hailing.. and then they would hide under bridges if they could.


I remember driving past Charles de Gaulle Airport when it rained so hard we couldn't see past the end of the bonnet (hood). Everybody just stopped until it passed.


> The reason I know to do this is because I saw other drivers do this on the highway and realized that's pretty wise. It's tempting to imagine that a younger version of me would have been smart enough to realize this on my own but I think most of us learn a lot by observing the behavior of others.

Did you ever hydroplane in a car, even ever so slightly? That experience teaches you to slow down or stop and wait for the rain to be over pretty quickly.


China didn't issue birth certificates until 1996. Because I was born there before 1996, I do not have a birth certificate. In addition, I was also birthed at home instead of a hospital. That said, it's never been a hindrance. My parents managed to obtain Hong Kong permanent residency for all of us and I guess that sort of rooted my birthday and birth place and it's been a continuous line of documentation since then -- green card and finally US passport. I think this was helped by the fact HK probably dealt with this issue a lot during the latter half of the 20th century.


Yea not birth certificates from the hospital, but there is documentation. Well, there was for awhile. My grandpa definitely didn't have a birth certificate back in the 1930s (or 1920s? lol) in Taishan, but also no docs of any sort whatsoever..

But my MIL from Mao era has docs from the local officials that's all notarized, as does my wife. The dates might be... you know, not exactly right, but they're close, and importantly they're accepted by both the Chinese government and also other foreign governments for official purposes (immigration, etc).

I think I the article here we're talking about something fundamentally different from the last 70-ish in China. They're talking about people with like no official docs whatsoever, can't get healthcare, national ID card, anything. Very different from China 70 years ago, and very different from even pre civil war China.


> I think I the article here we're talking about something fundamentally different from the last 70-ish in China

黑孩子 and 黑户 were fairly common until the last 5-6 years.

The issues mentioned in the article were prominent in rural China and the lower tier of migrant workers before e-governance innovations along with a relaxing on the one-child policy started a decade ago.

Furthermore, the township mentioned in the article is itself one of those migrant areas in Cape Town, similar to what urban villages are in Beijing and other cities in China.


you may not have had a birth certificate, but for sure you must have had a hukou, which establishes your birthday and who your parents are. that's pretty much all that is needed in most cases.


For food allergies, they already make powders that contains various different allergens that you can expose your kid to starting at a certain age.

And like sibling comment said, you can just also just take them outside and let them be kind of outdoorsy.


I wonder how that might look once you factor in Apple TV devices. They're pretty weak devices now but future ones can come with M-class CPUs. That's a huge source of potential revenue for Apple.


The current Apple TV is, in many respects, unbelievably bad, and it has nothing to do with the CPU.

Open up the YouTube app and try to navigate the UI. It’s okay but not really up to the Apple standard. Now try to enter text in the search bar. A nearby iPhone will helpfully offer to let you use it like a keyboard. You get a text field, and you can type, and keystrokes are slowly and not entirely reliably propagated to the TV, but text does not stay in sync. And after a few seconds, in the middle of typing, the TV will decide you’re done typing and move focus to a search result, and the phone won’t notice, and it gets completely desynchronized.


The YouTube app has never been good and never felt like a native app -- it's a wrapper around web tech.

More importantly for games, though, is the awful storage architecture around the TV boxes. Games have to slice themselves up into 2GB storage chunks, which can be purged from the system whenever the game isn't actively running. The game has to be aware of missing chunks and download them on-demand.

It makes open-world games nearly impossible, and it makes anything with significant storage requirements effectively impossible. As much as Apple likes to push the iOS port of Death Stranding, that game cannot run on tvOS as currently architected for that reason.


Whoa! You're here! Well, I think a lot of us owes you a debt of gratitude. Thank you for all you've done for the Python and Flask community.


And the Tesla factory in Shanghai also gets Chinese subsidies.

The subsidies to Chinese EV companies isn't direct anymore. Most of it is in the form of tax refunds. The biggest "subsidy", though, is the incredible pipeline China has built to feed the industry. Their industrial policy has created an huge ecosystem capable of feeding batteries and components into their EV industry at a price point and scale that no other country can compete with. It's been an incredibly effective industrial policy.

I get what the OP means about the destruction of our auto industry but we can only hide behind that for so long. An ineffective and noncompetitive auto industry won't be able to scale up during a war either. I hope our industrial leaders and politicians are using tariffs and other trade barriers to the US car industry only as a temporary reprieve while we scale up our ecosystem too. Otherwise we run the risk of becoming one of those countries that keeps outdated domestic companies alive just to say we have those companies. Without export discipline and the ability to compete effectively on the global stage, domestic companies are just zombies kept alive by domestic subsidies. They won't be able to help us in the event of a war with a peer adversary.


Wow! I've actually used T-Gel because I used to get dandruff really bad as a teen and it was pretty effective. It's horrifying to know what it really was.


It says coal tar right on the bottle. And it smells awful. And it can be pretty effective.


I used it briefly and then researched it and it seemed like at the time (mid-2000s), nobody could say which of the menagerie of components of the coal tar was actually the effective one.

I stopped pretty much at that point.


Try using something mild like baby shampoo, use tiny amounts of it, and less frequently. Works a lot better in my experience.


It's not true, fortunately. See my reply to the grandparent.


I'm a little surprised by the answers in "Cryptographic Right Answers". Both libsodium and Chacha20-Poly1305 are not FIPS-compliant. "AES-GCM" is but it has important gotchas in regards to the IV and per key data volume. "AES-GCM-SIV" is more resilient but "AES-GCM-SIV" isn't FIPS compliant either but there is a proposal underway to certify it. So the cryptographic right answer is "it depends". FIPS compliance may not matter to some people but it does a lot to others depending on the context.

I think the safe answer is AES-GCM using envelope encryption?


If you use libsodium, its very hard to screw up your encryption. If you use AES-GCM, it sounds at least like you can screw it up. Surely you'd want to use the first one?


Totally agree with you on this but I think in some settings FIPS-compliance is a requirement -- especially anything to do with the Federal government. The obvious fix is for FIPS to catch up but until then the three choices the document listed aren't great. The first two don't meet the requirements and the last choice, as you've pointed out, can be a bit of a foot gun. I wonder if AES-CBC-HMAC (i.e. Fernet) should be listed as a choice for FIPS? Like keep the original 3 and then have a sub-heading: FIPS-compliant: AES-CBC-HMAC or AES-CTR-HMAC like it did originally.


That list is geared towards developers who don't have a strong background in cryptography and helping them choose a secure algorithm that is easy to implement. Because if you get it wrong, more vulnerabilities will be introduced.

Working around janky compliance standards is a whole separate topic.


Anyone else find it fascinating that gigawatt/unit of power is the metric used for this deal?


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search:

HN For You