[HN Gopher] When SVG almost got network support for raw sockets
___________________________________________________________________
When SVG almost got network support for raw sockets
Author : sgerenser
Score : 265 points
Date : 2023-03-31 02:35 UTC (20 hours ago)
(HTM) web link (leonidasv.com)
(TXT) w3m dump (leonidasv.com)
| alixanderwang wrote:
| we embed some CSS in SVG outputs to make animated diagrams for
| our text-to-diagram language:
| https://github.com/terrastruct/d2/releases/tag/v0.3.0
| olliej wrote:
| The big reason for this iirc from various meetings was a number
| of maps systems that wanted to be able to say they were purely
| standards based, so they needed to be able do everything from
| within purely SVG. Recall that at the time XHR was just part of
| the general html spec - so there was no separate networking API
| that could be used _directly_ from svg.
|
| At this time of history SVG also was running on a belief that the
| correct solution to differing performance constraints was to have
| profiles. The high and low power profiles were not compatible
| such that you could easily end up in a position where you had
| content that could not display correctly in both at the same
| time.
| hoofhearted wrote:
| I have been just recently been getting into creating React SVG
| components that pass props to the inlined SVG code.
|
| It's pretty cool what you can do dynamically. I have been playing
| with dynamic css inside of the SVG, but animations are my next
| step.
| sirspacey wrote:
| Would love to see this, that sounds really cool!
| hoofhearted wrote:
| I'm currently building out Wordpress for developers.
|
| Our logo in an upcoming release uses inlined SVG, and it's
| taking a class name property to change the text color
| dynamically.
|
| https://github.com/elegantframework/elegant/blob/v2.0-alpha/.
| ..
| kylejrp wrote:
| I once helped someone create a monstrosity of an SVG - they
| exported a flowchart SVG from Visio that would show the current
| state of different steps of a project. The status of each step
| was stored in a SQL database. I helped write some JavaScript
| inside the SVG that would create an ActiveX object that would
| open up a ODBC connection and execute a SQL query to get the
| latest states, which would update the colors on the flowchart
| every time you loaded the SVG. It would obviously only work in
| IE11. Plaintext credentials stored right inside the SVG!
| legec wrote:
| > I'm still pissed I can't use Inkscape as my IDE.
|
| You can always fall back to MS Paint: https://ms-paint-i.de/
| mikeytown2 wrote:
| An alternative to adobe flash was the idea behind sockets I'd
| imagine
| scaramanga wrote:
| For anyone familiar with sockets being very confused. When they
| say "raw sockets" they just mean like TCP or UDP sockets as
| opposed to eg. "websockets".
|
| Actual raw (PF_INET, SOCK_RAW) sockets would allow you to do all
| kinds of additional crazy things beyond merely establishing a TCP
| connection or sending a UDP datagram.
|
| https://man7.org/linux/man-pages/man7/raw.7.html
| junon wrote:
| Thank you for clarifying. Actual raw sockets for SVG would have
| been absolutely insane.
| barneygale wrote:
| It's a shame we never got to see a DHCP server implemented in
| SVG!
| mgaunard wrote:
| That is not what "raw socket" means. Those are TCP sockets.
|
| And yes, it would have made more sense to have TCP support rather
| than to force HTTP onto everything.
| sgerenser wrote:
| Technically correct (the best kind of correct). But in the
| context of a browser, it's obviously just referring to actual
| TCP/UDP sockets, as used by native applications, rather than
| being intermediated by the browser and limited only to certain
| application level protocols like HTTPS.
| chatmasta wrote:
| SVG is crazy. Here's an SVG in a GitHub readme, animated with
| CSS: https://github.com/sindresorhus/css-in-readme-like-wat
| Evidlo wrote:
| SVGs can also have buttons/sliders and be interactive.
| sgerenser wrote:
| Imagine how much crazier it would be with socket support!
| hoofhearted wrote:
| What do you mean by socket support?
| IncRnd wrote:
| It's explained in a blog post located at
| https://leonidasv.com/til-svg-specs-almost-got-raw-socket-
| su...
| iliane5 wrote:
| SVG also supports <script> tags, which is even wilder
| justinator wrote:
| What we lost with SWF was an easy enough use authoring tool.
| Sockets or not, whatever SVG can do, is there an authoring tool
| for it like there was for Flash?
|
| I LOVED Flash - it probably is one of the first software products
| I actually bought at the student price in highschool. Flash 5 was
| just magic, I thought.
| toastal wrote:
| SVGs performance is poorly optimized in every rendering engine.
| Flash had better performance with animations.
| halo wrote:
| I mentally group Flash, Visual Basic and Visual FoxPro together
| as dying because they were unfashionable in tech circles
| despite being highly productive and practical. They never got
| effectively replaced and we will very slowly end up with modern
| equivalents.
| JasonFruit wrote:
| Add Microsoft Access to that list -- it was crazy, both good
| and bad, what semi-tech people did with it.
| crazygringo wrote:
| Maybe they were unfashionable but that's not why they died at
| all.
|
| Flash died because the iPhone killed it because Adobe refused
| to work with Apple to make it more secure and more power-
| efficient. Ultimately it was Adobe's own-goal.
|
| And Visual Basic was similarly a self-inflicted death, when
| Microsoft decided to make VB.NET incompatible with the
| previous VB6. But what was bad for Microsoft was good for the
| internet, as HTML+JS ultimately replaced VB6 for enterprise
| apps.
|
| FoxPro I don't know about, though. Never approached Flash/VB
| in terms of popularity.
|
| Flash videos and apps got easily replaced, and animations
| with HTML/CSS/JS, and those bite-sized Flash _games_
| basically got replaced with mobile gaming as apps.
| giantrobot wrote:
| > I mentally group Flash, Visual Basic and Visual FoxPro
| together as dying because they were unfashionable in tech
| circles despite being highly productive and practical.
|
| I don't think any of those died because they were
| unfashionable. They died because the world/environment they
| were designed for changed or left them behind.
|
| Flash was built for the world of desktop computers with a
| mouse, keyboard, and relatively large amounts of RAM. It was
| _optimized_ for Windows /x86 but could also be made to run on
| other platforms and architectures. Even on Windows it was
| unstable and extremely insecure. On mobile its performance
| was atrocious and all on onMouseDown() events (the typical
| click event people used) just went nowhere. Flash _as
| written_ also didn 't tend to handle portrait aspect ratios
| nor window dimension change events well if at all. Adobe was
| also a terrible steward of the plug-in. They did not want to
| put the resources into making it good, they barely kept it up
| with security updates.
|
| VB was similar in that it was designed for the unconnected
| 32-bit desktop world. Microsoft wanted to drop the VB6
| runtime and just make the VB language hosted on top of the
| .NET runtime. It wasn't that the language was out of fashion,
| lots of LOB apps were written in VB in many companies,
| Microsoft was just uninterested in continuing development and
| had a new hotness they were pushing. VB.NET was an imperfect
| upgrade path for VB6 developers.
| est wrote:
| From the looks, I assume SVG was trying to compete with .SWF,
| which added network support around that time.
|
| Which is OK I guess.
| dboreham wrote:
| Ok if you are a DDoS'er
| est wrote:
| IIRC many Flash objects was indeeded abused as a DDoS tool.
| egberts1 wrote:
| I got an even bigger guide from this article on discontinued WG
| for Full (networked) SVG: libphonenumber library by Google,
| ported in many programming languages.
|
| Covers a the general gotchas on phone number parsing (by
| convention, countries, and telco eccentricities).
|
| And started using it. Thanks, Hacker News.
|
| Oh, it's a good thing that Full (networked) SVG didn't get
| formalized.
|
| https://leonidasv.com/til-parsing-phone-numbers-is-a-nightma...
| qwerty456127 wrote:
| This is sad. I feel like they should have actually added it.
| Developing a full application in a .svg file sounds really great
| to me.
| hadlock wrote:
| You have to remember the background for this era. Shockwave (not
| yet even Adobe), Shockwave Flash was the overwhelming interactive
| media on the internet. Kids in middle school and high school
| watched episodes of .flv videos of South park, we played "stick
| figure skiing" or "stick figure fighting" games, there were stick
| figure sledding games, all sorts of "multimedia" apps existed
| inside the "flash" container/spec. Some of them (multiplayer)
| also had network support of some sort, if only for supporting
| ads. A big part of flash was that it was not bitmap, it was...
| scalable vectors, which allowed it to shrink traditionally
| "large" (500kb+, easily 10 minutes on dialup) spritemap heavy
| games, down into 45-100kb (less than 7 minute download) packages
| that could be played on nearly any desktop
|
| SVG had the same base layer functionality but network support
| would have been a big step towards making an open standard
| version of Flash. The iPhone was famously one of the last devices
| to drop support for Flash (due to both wild and regular security
| holes), and when they did, Flash (the predominant consumer web
| technology of the early-mid 2000s) finally died. It was a big
| deal. Had SVG gotten flash-like capability, it could have been a
| real game changer (although with giant security holes). Security
| back then was "somebody elses' problem" so while raw sockets
| seems wholly irresponsible by modern standards, back then it was
| the norm, partly because less than 10 million people worldwide
| really had any kind of risk exposure, plus the fact that the
| internet was still mostly decentralized, AOL was still considered
| a major force back then. Facebook and others with billions of
| users didn't exist yet.
| Waterluvian wrote:
| For me Flash was fully in the broadband era. We watched and
| played (and I even made some for class credit) at high school
| and at home. Whenever they took more than 10 seconds to load
| you knew you were in for a treat. But 7-10 mins? I don't recall
| it being that order of magnitude.
| ivanhoe wrote:
| Just a note for a younger generations that Flash (re-branded by
| Macromedia as Shockwave Flash) and Macromedia Shockwave were
| actually two different products - Shockwave being a more
| advanced multimedia platform inspired by Flash, which was
| primarily the svg animation tool. Still, Flash was a far more
| popular format and it was what the most of people used everyday
| as it was available by default as a plugin on every new
| browser.
| LinAGKar wrote:
| The distinction I remember from the time is that Shockwave
| player allowed 3D games (a use case that was later also
| filled by Unity Web Player) while Flash Player was just for
| 2D stuff. Also, Shockwave and Unity weren't available on
| Linux, unlike Flash.
| nogridbag wrote:
| And the user experience was incredibly different. For me
| personally, when I went to a website that used Shockwave I
| would reach for the back button because it rarely worked on
| my machine, similar to RealMedia player and Java applets.
| Regarding Java applets, I was tasked with fixing one Windows
| machine in a university computer lab that simply would not
| load a Java applet. All the machines in the lab were cloned
| from the same image and I was the resident Java expert. For
| the life of me I could not get that machine to load the Java
| applet - I spent an entire day on it.
|
| Flash always seemed to work and load fast which likely had
| some role in it getting mass adoption.
| morkalork wrote:
| Playing games like slime volleyball in grade 9 got me and
| probably thousands of other kids interested in programming.
| billfruit wrote:
| Is there any modern stack out there for making games with
| vector graphics?
| leonidasv wrote:
| Author here.
|
| I saw people saying basically the same in Twitter and almost
| mentioned that SVG with networking was going be positioned as a
| Flash competitor (and sure it makes sense!), but found no
| reliable source on this.
|
| Do you have any source/link/PDF from that time mentioning this
| goal for SVG? I would happily update the article if you could
| link it here. Thanks!
| Marazan wrote:
| Everything was being positioned as a Flash killer.
|
| It was so all pervasive you didn't have to explicitly say it.
|
| HTML5 was flash killer. The way the Javascript standard
| developed was a Flash killer. Everything was aiming to kill
| Flash and take down Adobe.
| hadlock wrote:
| It just seems like the logical outcome. This is like
| suggesting asking for adding wireless transmitters and
| receivers on car keys and cars, then asking for concrete
| documentation that they are intended to be used for locking
| and unlocking your car. If there were other applications for
| this technology, I'd be curious to hear about it.
| shellac wrote:
| I wasn't involved in SVG, but knew quite a few of the people
| involved around the working group. Seeing socket support
| mentioned certainly raised a smile: one of the team was quite
| keen on writing a pure-svg IRC client, I think.
|
| It wasn't an explicit goal of SVG 1.2 to replace Flash. You
| should be able to dig out the working group charter to check
| that. However the way these groups worked was that there were
| various communities ('stakeholders' if you must) who
| contributed thoughts and ideas. At least one of the companies
| implementing SVG certainly did want a Flash competitor, and
| so was keen on sockets.
|
| I think they all knew it wouldn't fly, but they get excited.
| You see the same with Chrome and stuff like USB and Bluetooth
| access.
| 1970-01-01 wrote:
| This was the time when things were truly awesome in terms of
| content. Flash, Shockwave, SVG, and Java Applets meant there
| were no longer restrictions to animation on websites. Security
| just wasn't a big problem. It was a golden age.
| mmaunder wrote:
| Came here to say this. It was also coming out of a Java applet
| world which was along the same lines.
| thrdbndndn wrote:
| > The iPhone was famously one of the last devices to drop
| support for Flash
|
| Isn't it the opposite? iOS never supported Flash, which helped
| kill it once iOS gained popularity.
| Klonoar wrote:
| It is exactly the opposite, yes.
| Gigachad wrote:
| Good summary, only thing I'd add is that the iPhone didn't drop
| support for flash, they never had it to begin with and made it
| clear they never would. Android vendors at the time used to use
| flash support as selling point until they too dropped it.
|
| Being the first to call the death on something seems to be an
| ongoing trend with Apple.
| nntwozz wrote:
| Flashback to Steve Jobs' famous "Thoughts on Flash"
| https://newslang.ch/wp-content/uploads/2022/06/Thoughts-
| on-F...
|
| It was not well received at the time. Oh how things have
| changed.
| gumby wrote:
| Well it wasn't received well by Adobe, who had by then
| bought Macromedia, nor by people who had tied their wagon
| to Flash. But Flash was pretty horrible even on most
| laptops and even many desktops of the day, and was a
| security nightmare.
|
| The complainers were loud, but I think the majority of
| people who cared (99% of humanity didn't even notice, of
| course) were muttering "amen brother!"
| exsf0859 wrote:
| Besides animation and games, Flash was also used for
| streaming video and video conferencing.
|
| iPhone customers were so desirable that, over time, the
| video streaming sites had to support Apple's video
| streaming format. They would have also supported Apple's
| video conferencing app, but I think Apple was unable to
| open-source the protocols for the video conferencing
| format, due to patent issues.
| duskwuff wrote:
| > had to support Apple's video streaming format
|
| It's a little weird to call an open standard (like H264)
| "Apple's format".
| lultimouomo wrote:
| H264 is not a streaming format. HLS is, and it is pretty
| much "Apple's format". It's pretty backwards, and
| everyone was forced to support it because it was the one
| streaming format you could use in iStuff.
| giantrobot wrote:
| Back when streaming meant RTP/RTSP the MPEG-4 file
| format, and the way bitstreams were packaged, definitely
| supported streaming. Not only does the format have a
| sample mapping table but it supports streaming hint
| tracks to give a server packetizing hints.
|
| Scaling RTSP was difficult because it required two way
| signaling with the server and for the server to maintain
| client state. Using HTTP instead allowed for stateless
| servers in a CDN to easily scale and pushed stream
| negotiation onto the client. Besides simplifying the
| server side of streaming it made it much easier for
| clients switching from cellular to WiFi to maintain a
| stream, RTSP (and protocols like it) can't really handle
| clients switching addresses mid-stream.
| mikeryan wrote:
| HLS was a significant improvement over other options for
| live (rtmp) and adaptive bitrate solutions.
|
| I mean it could be delivered via HTTP and was was built
| off of open standards for the manifest files. (HLS just
| breaks down mp4 files into smaller chunks and lists them
| in a text manifest file based on the mp3 playlist spec) *
|
| It significantly moved the needle forward on how video
| was delivered and did so in a standards based way until
| DASH came along.
|
| Not sure why the hate here for their "proprietary
| standard" it wasn't proprietary - just no one was using
| it and it eventually became a defacto standard because it
| "just works".
|
| * I know I'm simplifying this.
| duskwuff wrote:
| In particular, HLS allows existing HTTP load balancers
| and content distribution networks to be reused for video
| streaming -- you don't need to build or buy application-
| specific infrastructure to use it, as you would have with
| previous streaming protocols.
| geocar wrote:
| > It's pretty backwards
|
| I think it's pretty clever.
|
| There are a lot of usability issues with firewalls and
| proxies that make implementing other streaming protocols
| very difficult, and the HLS design basically causes the
| implementer to adopt a pattern that is resilient to those
| problems.
|
| Networks got a lot better after Covid had everyone work
| from home so IT had to sort the hot-path out for
| videoconferencing. Nowadays I think WebRTC would be fine,
| but in 2009 I think HLS was pretty smart.
| lultimouomo wrote:
| I am comparing HLS with other HTTP-based streaming
| formats - DASH and SmoothStreaming. They definitely have
| their issues (DASH in particular is the epitome of the
| second system syndrome) but they fix the two most glaring
| issues with HLS: separate manifests and non-aligned
| segments.
|
| Source: I write an HTTP streaming client library for a
| living.
| Evidlo wrote:
| H264 isn't open though, depending on your definition of
| open
| duskwuff wrote:
| Fine, pretend I said "industry standard" then. Either way
| it wasn't something Apple made.
| lmm wrote:
| Have they? I would say the subsequent ~10 years of the web
| have vindicated Flash. HTML5 video hasn't made websites
| lighter or less annoying - quite the opposite (indeed video
| ads are a worse problem than Flash ads ever were).
| Meanwhile creativity and innovation on the web have taken a
| hit. 10+ years on there's still nothing that allows a lone
| auteur to produce a web experience as easily and
| effectively as you could with Flash (it seems to be
| _possible_ to match Flash, a la the NYT 's Snow Fall or the
| previous Madogatari intro, but not at a level that's
| accessible to an individual creator), and we're all worse
| off for it.
| paultopia wrote:
| This brings back memories. 20 years ago, I was managing a
| band in New Orleans (by an amazing coincidence I'm in New
| Orleans for a 2 day trip now), and I decided to make them
| a website. It being 2003, I did the website in flash, and
| with my zero coding skills at the time ... it still came
| out pretty awesome. Wish that still existed.
| wink wrote:
| Technically it's not the fault of the videos that web
| standards now allow easy embedding, it's still the people
| abusing it to show you video ads. Just saying it's worse
| than Flash... it's like saying browsers should not show
| non-animated images because you can have ad banners.
| kitsunesoba wrote:
| Flash games and animations were cool, but it seemed like
| for every cool thing made with flash there was also a
| terrible SWF-as-a-website that didn't play nice with
| browser window resizing and was more frustrating to use
| than even the worst modern JS-mudball monstrosities. At
| least content blocker extensions and reader mode can
| somewhat salvage bad sites... with flash pages you got
| the whole thing or nothing.
| philsnow wrote:
| Oddly enough your comment made me think of electron apps
| vs native apps, because they are usually impenetrable to
| accessibility APIs so they appear as completely opaque
| apps with no a11y affordances.
| Earw0rm wrote:
| Seems like a solvable problem in the medium term -
| Electron apps are, in effect, a web page; build an
| accessible page, the Electron runtime _should_ be able to
| join the dots same as a full browser does.
| giantrobot wrote:
| It seems like a lot of frameworks used with Electron are
| the "reinvent every HTML tag as a component with divs"
| variety. So unless a developer hangs a bunch of event
| handlers off some widget they don't have default handlers
| for a lot of accessibility. If they used a real tag
| they'd get a bunch of free accessibility/functionality
| but instead they use components.
| kitsunesoba wrote:
| To me that highlights how important it is for UI
| frameworks of all types to have accessibility affordances
| not only built in, but as one of the pillars of their
| designs. That makes it so even apps developed without any
| regard to accessibility are reasonably accessible by
| default.
|
| This doesn't gel well with the bring-your-own-everything
| nature of the web, unfortunately. Even if you look just
| at React there's 50 ways to build the same thing, which
| I'm sure makes rolling in accessibility that "just works"
| across all React apps without additional effort from the
| developer extremely difficult. It's much more practical
| with UI frameworks that are strongly opinionated with
| only a single well-supported "happy path" for most
| things.
| rektide wrote:
| This keeps coming up, but it keeps seeming hogwash &
| backwards.
|
| There are dozens & dozens of really really good html/svg
| animation products that give Flash like capabilities. But
| there's vastly less interest in this stuff today.
| Fun/simple/quirky Flash-like stuff isn't nearly as unique
| or novel, now that we have much more upscale products &
| experiences. It _was_ a magical time & Flash helped, but
| we've changed & these rose-colored glasses views on Flash
| never point out all the myriad of ways it was awful,
| choppy, poorly integrated, quirky to work with, &
| otherwise difficult.
|
| If you want higher there are hundreds of web-dev
| targeting game dev systems which can be put to use. Many
| of these actually do have popularity. In spite of their
| being good Flash-ish animation toolkits, it doesn't feel
| like there's a ton of demand or clear winners. It's hard
| to imagine what we'd want it for today.
| JoeyJoJoJr wrote:
| I was a Flash developer and have searched everywhere for
| a comparable tool. None exists. Recently I have worked on
| interfaces for touch screen kiosks, and digital signage.
| Flash was excellent for these kinds of projects and 10
| years later nothing compares.
| illiarian wrote:
| > There are dozens & dozens of really really good
| html/svg animation products that give Flash like
| capabilities.
|
| And those are?
|
| > now that we have much more upscale products &
| experiences.
|
| And those are?!!
| lmm wrote:
| I think the demand is there, but you underestimate how
| much difference the tiny inconveniences make. Like, maybe
| there's stuff out there that can do the same thing, but
| the people who are just starting out don't know where it
| is (hell, I'm an experienced programmer and I don't know
| where it is) or what to pick up. A lot of those great
| Flash works were made by literal schoolkids, or more
| often by young adults who'd got their start as schoolkids
| and gradually refined their craft, because you could just
| pick up Flash and start doing things, and kids did. From
| what I hear maybe Roblox is filling the same niche now,
| but that's only happened in the last few years, and for
| all that Flash was notionally proprietary and poorly-
| integrated with the open web, having it right there in
| your browser was still a win.
| EamonnMR wrote:
| The loss of the mouse and keyboard as primary input
| devices is an underrated part of why everything feels
| worse now compared to the flash era. Web is a very
| different target now than it was. Also, the flash game
| ecosystem was intertwined with the animation ecosystem
| and the advent of streaming full motion video devalued
| animation skills.
|
| Anyway nowdays we have Godot and Unity which are both
| very nice. But there were definitely lost years where
| amateur gamedev was less accessable.
| grishka wrote:
| > The loss of the mouse and keyboard as primary input
| devices is an underrated part of why everything feels
| worse now compared to the flash era.
|
| It's okay to say "please visit this from your computer"
| when someone opens something that requires a keyboard
| from a phone.
|
| > Anyway nowdays we have Godot and Unity which are both
| very nice. But there were definitely lost years where
| amateur gamedev was less accessable.
|
| The barrier to entry is considerably higher with these
| things. They _require_ programming from the beginning.
| The coolest part about Flash was that you could get
| started without writing a single line of code. Then you
| could build up your understanding of the thing
| iteratively. You could build a simple quest-type game
| with _just_ one line of code that you copy-pasted from
| somewhere, `goToAndStop(frameNumber)`. And then you go
| from there -- variables, flow control, all that. Flash
| got a sizable number of people interested in programming.
| This ease of use is extremely important and it 's still
| unmatched by any purported modern replacements.
| yathaid wrote:
| >> It's okay to say "please visit this from your
| computer" when someone opens something that requires a
| keyboard from a phone.
|
| Unless you have a captive audience, like forced to use
| enterprise users, this is not a winning strategy for any
| internet based product.
|
| Also, the assumption that everyone will have devices in
| two form factors is, and I am being charitable here,
| naive.
| thrashh wrote:
| I wouldn't touch any of those game systems with 10-ft
| pole. Their user bases are too small to be worth using.
| They also don't at all compare to the Flash IDE.
|
| Flash was great because it was popular and supported with
| the weight of a big company that loved its own child.
| Their love translated to great tooling.
|
| Whereas the web is "community-owned" and
| community/committee-designed things rarely get super cool
| and fleshed out things like well-integrated for-everyone
| tooling. Instead, you mostly get self-serving projects
| that serve the creator's own need primarily. Usually
| half-baked. And it's not interoperable with anything
| else.
| stuaxo wrote:
| The authoring tool was a big part of why so much flash
| stuff got made.
| Pulcinella wrote:
| I don't get the love for Flash on Hacker News. It's very
| odd to me to see people say they prefer Adobe's
| proprietary format and software to the open web.
| vlovich123 wrote:
| As someone that helped a little bit in bringing Flash to
| WebOS, it was a battery stuck because there was no HW
| acceleration. Additionally, the software was very very
| bad. Used a crapton of memory, was really slow, and
| horribly insecure. Adobe was caught really off guard by
| mobile and never prioritized flash. If little else, the
| modern web is infinitely more secure than the flash
| player and Adobe would never have prioritized it. We also
| have ~3 major open source browser engines that
| independently implement the web compared with one closed
| source vendor. So structurally things are also infinitely
| healthier. That the web is a cesspool in turns of content
| is an orthogonal problem that would have always been the
| case (but also a flash laden website are up way more RAM
| and CPU than the equivalent html)
| grishka wrote:
| That's the problem with the particular proprietary
| implementation of flash player. There's nothing
| inherently bad about the swf format itself.
| acdha wrote:
| That's like saying there's nothing wrong with Word
| because you could just build your own version. Adobe
| controlled the format and since they didn't care about
| quality, performance, security, or tool quality that
| doomed it.
|
| The other big thing which hit Flash was mobile.
| Rearchitecting it to support the equivalent of the web's
| responsiveness was a huge problem which got lost in the
| "Steve Jobs killed Flash" narrative. Battery life wasn't
| the only thing which made it unpopular on mobile - that
| could have been improved even though some aspects of the
| platform made that hard - but also the fact that Flash
| was based around mice and fixed-size displays. Very
| little of the existing content worked well (often at all)
| on the mobile devices which did have Flash.
| butlerm wrote:
| Vector graphics designed for a desktop display or a
| printed page generally do not work well on small displays
| unless scaling to fit or scrolling is acceptable. I can
| hardly imagine what one would do to make something like
| SVG reflow in a sensible way. Line of business (web)
| applications often have the same problem, i.e. there is
| often a display size below which they simply are not
| usable, and that should be no surprise to anyone.
| cyberax wrote:
| Apparently, the x86 version of Flash was extremely well-
| optimized and as a result very spaghettified. So even
| porting to 64 bits took Adobe years of effort.
|
| Additionally, the SWF format itself was way ahead of SVG.
| It still is to some extent: https://open-
| flash.github.io/mirrors/swf-spec-19.pdf - look at the
| part that describes shapes, and compare it to SVG.
|
| One thing that helped was ability to have shapes with
| fill on each side of the edge, allowing smoothly joined
| scenes that can be animated at real-time. All without the
| use of high-precision math, Flash used integers only with
| some fixed-point data!
| tinus_hn wrote:
| There was also bug for bug compatibility with every old
| version ever released. Hard to support and impossible to
| port.
| nly wrote:
| Ah, yes. I remember the days of using b nspluginwrapper
| to load the 32 bit flash plugin in a 64 bit browser on
| Linux...
| scrame wrote:
| > it was a battery stuck because there was no HW
| acceleration. Additionally, the software was very very
| bad. Used a crapton of memory, was really slow, and
| horribly insecure.
|
| You're describing javascript in that era.
| numpad0 wrote:
| Weren't there tons of devices that use Flash Lite for UI
| up to that era, in mp3 players and flip phone markets?
| giantrobot wrote:
| Flash Lite was not really "Flash". It didn't support
| older ActionScript, it had extremely limited codec
| support (relying on a device's hardware support), and was
| missing a lot of the network features the desktop plugin
| had. Generally it wouldn't be able to load arbitrary SWFs
| off the web. Even to run a SWF the developer needed to
| write to the Flash Lite profile, like targeting a MIDP
| profile in J2ME.
|
| Flash Lite was usually used on the devices you mention as
| the "app" environment instead of J2ME, BREW, or whatever.
| Evidlo wrote:
| > it was a battery stuck
|
| Is this an idiom? What does it mean?
| jjtheblunt wrote:
| I think it's a typo, the person meant "battery suck" as
| in drains the battery.
| lmm wrote:
| > it was a battery stuck because there was no HW
| acceleration. Additionally, the software was very very
| bad. Used a crapton of memory, was really slow, and
| horribly insecure.
|
| Surely lack of hardware acceleration and poor
| implementation are incidental, not fundamental issues.
| Just as browsers eventually got their own PDF
| implementations because Adobe's sucked, I expect the same
| would have happened for Flash eventually.
|
| > We also have ~3 major open source browser engines that
| independently implement the web compared with one closed
| source vendor.
|
| We have WebKit and Gecko, and the latter barely exists on
| mobile. I'm not convinced we're a lot better off in
| practice.
| geocar wrote:
| > Surely lack of hardware acceleration and poor
| implementation are incidental, not fundamental issues.
|
| Of course not. These are just some of the many many
| needles of crap that broke Flash.
|
| > I expect the same would have happened for Flash
| eventually.
|
| Perhaps you underestimate just how complicated "Flash"
| is: It's 2023 and despite everything you can do in a
| modern Web browser with HTML5, SVG, JavaScript, Video and
| so on, we still don't have a second full reimplementation
| of Flash. No emulator or converter that preserves all of
| the authors intentions, not even with a server-side-
| helper to cover the differences in networking policies
| between the web and Flash. I still think it would take
| serious cash/time to do this.
|
| And for a large company to do it would risk being sued by
| Adobe. They promised. I think if Adobe couldn't fix the
| crap-needles for whatever reason, nobody else could
| either. Adobe made sure of that. And nobody wants to pay
| the Adobe tax when Flash hurts users so bad.
|
| PDF on the other hand, is easy enough to implement on
| screens in a month or less, spec-in-hand. Users who use
| Adobe's PDF reader deserve what they get.
|
| > We have WebKit and Gecko, and the latter barely exists
| on mobile. I'm not convinced we're a lot better off in
| practice.
|
| I do feel a little better off. I remember a time when
| every flash bug was an opportunity to airdrop malware,
| just buy an ad and get on every desktop PC in the world
| for chump change. I had to browse the Web in a VM, back
| when VM's on workstation PC's were still painfully slow,
| because I needed the ability to rewind state so often. I
| really don't miss that.
|
| A small number of players working (largely) openly (i.e.
| we have webkit and gecko's source code!) allowed features
| to the Web be deployed relatively quickly, and problems
| fixed fast and usually with the smallest-possible harm.
| And I think people are sufficiently suspicious of closed-
| source infrastructure that people (mainly purchasing VPs
| at big enterprises) will be able to resist any attempts
| to change that.
| carefish wrote:
| Lovely points you bring to the table, agreed on all
| fronts. Just wanted to add that there is definitely a
| decent attempt at creating that implementation though:
| https://ruffle.rs/
| geocar wrote:
| I'll watch out for ruffle (60% of AVM2 sounds
| promising!). Thanks for that.
| gpvos wrote:
| How far have Blink and Webkit diverged? Do they still
| take patches from each other?
| Lex-2008 wrote:
| Thanks for a nice writeup! Regarding "for a large company
| to do it would risk being sued by Adobe" - what do you
| know about "Pepper flash plugin", which was shipped with
| Chrome at some time? Back then I had an impression that
| it was an alternative implementation of flash player, but
| developed by Google.
| geocar wrote:
| I think Pepper was just the name of Google's extension
| API, and so Pepper Flash was just a (re)packaging of the
| flashplayer artefacts from Adobe. My memory of this was
| that it was pitched (to users) as a "safer" flash, since
| it could take advantage of Google's isolation/sandboxing
| features, but I don't have any special knowledge here: I
| just made a shittonne of flash stuff back in the day.
| hnlmorg wrote:
| We also have iOS, Android, ChromeBooks, Tizen, macOS,
| GNU/Linux, games consoles, TVs, tablets, home assistants
| like Echo Show, and a dozen other platforms I've not
| thought of.
|
| Whereas back in the flash days there was basically just
| x86 desktop Windows and the few other web enabled devices
| were niche and didn't properly support Flash.
|
| The Dreamcast had a browser (based on IE) but suffered
| from an ancient version of flash. PDAs were uncommon,
| also had a browser based on IE, and also suffered from a
| crippled version of Flash. Smartphones were a few years
| off and when they did arrive also had a crippled version
| of Flash (or no support at all).
|
| Flash was a format for a different era. An era when
| Microsoft had suffocated the tech industry. The fact that
| we can now view basically any website on any hardware is
| a _massive_ step forward.
|
| I agree that the modern era of the web has its problems
| too (I'm looking at you Google, Facebook, etc) but having
| been a developer and early adopter of the web, I'd still
| take modern web technologies over Flash any day of the
| week.
| lmm wrote:
| > Whereas back in the flash days there was basically just
| x86 desktop Windows and the few other web enabled devices
| were niche and didn't properly support Flash.
|
| It wasn't quite that bad. I was running FreeBSD at the
| time and Flash was fine there. In fact I remember for a
| few years it was easier to have working Flash than
| working "web video".
| eyelidlessness wrote:
| Blink (Chrome/Chromium-derived browsers) is a fork of
| WebKit but has diverged for _many years_. To treat them
| as the same, you should call them KHTML as that's their
| common lineage. But that would be obviously absurd.
|
| WebKit and Blink are not the same browser engine.
| dontlaugh wrote:
| Sure, although Blink and WebKit are still much closer
| than WebKit and KHTML.
| egberts1 wrote:
| We have four major technologies within web browsers.
|
| JavaScript is one.
|
| That too in turn also covers six types of JavaScript
| engine.
|
| * Mozilla * Microsoft * WebKit * Adobe * Opera
|
| https://egbert.net/blog/articles/javascript-jit-engines-
| time...
| conradev wrote:
| It did happen eventually: https://github.com/ruffle-
| rs/ruffle
| wlesieutre wrote:
| Maybe not well received from Windows users?
|
| It had some fun games but on the Mac side it was always an
| unstable dumpster fire. Having the iPhone browser start to
| push people away from making entire Flash-based websites so
| they could play music and crash my browser was a godsend.
| Groxx wrote:
| It was divisive, but I wouldn't say "not well received".
| The "Flash deserves death" camp was very large and very,
| _very_ happy that someone with power was finally calling
| them out on their horrific security record.
|
| Losing the high-quality authoring environment, without
| anyone producing something competitive, was a pretty big
| blow. But for the rest, I'm quite glad to see invasive
| browser plugins disappear.
| dutzi wrote:
| There was also the Adobe Loves Apple campaign
|
| https://www.fastcompany.com/1646594/adobe-launches-hearts-
| an...
| kristopolous wrote:
| They're often the ones holding the gun.
|
| Example: if they didn't remove the 3.5mm headphone jack,
| almost nobody else would have.
| geraldhh wrote:
| btw, what was the rationale behind that?
|
| i mean, there's clearly enough space for it, so was it
| really just to make way for the (very profitable) earbud
| trend?
| illiarian wrote:
| Apple bet on the wireless future across the board, and
| has been betting on it for a while. The results are a
| mixed bag to say the least.
|
| As for headphones/earphones, IIRC there was a marked
| trend in adoption of bluetooth headphones, so Apple bet
| on that. Funnily enough, the competitors that derided
| Apple for removing the jack, and building some of their
| marketing campaigns around that, would remove the jack a
| year later.
| dontlaugh wrote:
| There is no longer enough space for it on recent iPhones,
| it has been used for other things.
|
| Personally I think you could still make a small phone
| with a jack, but ultimately it doesn't matter much either
| way. Adapters work fine and bluetooth works even better.
| derbOac wrote:
| FWIW, I disagree. The best Bluetooth earbuds don't
| compare to 3.5mm in sound quality, and wireless just adds
| another charging dilemma, which is usually fine but can
| become an issue in certain situations. The adapters are
| fine in theory but often are clunky or incompatible
| across platforms. USBC would probably be fine but almost
| no one uses them and when they increasingly double as
| charging ports, you have the charging problem again.
|
| 3.5mm is a standard that just works and works everywhere.
| I hate the pressure to get rid of it. It seemed nothing
| but self serving on the part of phone manufacturers to do
| so and driven partly by DRM concerns and a desire to
| either sell accessories (airpods) or ride a minimalism
| trend to shave design and manufacturing costs.
| geraldhh wrote:
| > 3.5mm is a standard that just works and works
| everywhere
|
| absolutely everywhere, anytime!
| kristopolous wrote:
| bluetooth has latency and it re-encodes audio to a lossy
| bluetooth audio standard (and yes I know there's at least
| two and the high-fidelity one isn't bad - it's still
| lossy) . Unless that is, Apple has "special bluetooth"
| that avoids this. I wouldn't put that past them. Link me
| to a doc if they do.
| gopalv wrote:
| > They're often the ones holding the gun.
|
| Apple customers historically are often the most accepting
| of new things, even if that means change that involves
| spending more money, because Apple will cover the other end
| of change well (& expand a little that way).
|
| The 3.5mm jack loss is tolerated because of airpods.
|
| I'm old enough to remember the furor caused by Apple taking
| the 3.5 floppy drive when every publisher used Apple
| hardware for QuarkExpress & everything Adobe, replaced with
| this new-fangled usb thing.
|
| The crucial thing over there was that Apple didn't bring in
| their own USB drive thing, but instead let IOMega try to
| deliver it & it went poorly for Apple customers who had big
| data swaps between them & others (DTP shops, magazine
| layouts, Photoshop artwork etc).
| KerrAvon wrote:
| You have to remember that this was pre-iPod -- Apple did
| not have infinite money at that time; it had been not
| quite two years since it was nearly bankrupt. They really
| had to be careful with resources. Having third parties
| provide all of the interesting external peripherals might
| have been a simple necessity.
| kristopolous wrote:
| Nah, Steve was smarter than that. First, removing the
| floppy bought Apple millions of dollars worth of
| publicity - it seemed scandalous and people still
| remember it 25 years later just like he somehow got away
| with using public domain images of Ghandi and Martin
| Luther King to hawk consumer electronics. It was as if
| Albert Einstein personally thought you should really buy
| an iPod.
|
| Second, as with all of Apple products, aesthetics
| concerns were more important than functionality. If
| you've ever dealt with that original iMac, it's a tight
| fit. The design ratios would be off with a floppy so it
| had to go.
|
| Now I wish it didn't also have a bios battery that would
| freaking explode at about the 10 year mark, splattering
| battery acid everywhere and destroying the hardware but
| that's part of the long tradition of Apple's occasional
| exploding devices.
| toastal wrote:
| Bluetooth earbuds are just not a substitute for wired
| heaphones. They could have supported both without
| compromising either but instead they started a trend of
| "we too have expensive-for-the-sound-quality branded
| earbuds" trend who's two-year lifespan with little-to-no
| repairability will just be e-waste in the landfill.
| Thanks Apple.
| avianlyric wrote:
| > They could have supported both without compromising
| either
|
| I find this a little hard to believe. If there really are
| no compromises to continuing to support the 3.5mm jack,
| then I would expect other phone manufacturers to continue
| support on their flagship devices, and hammer Apple for
| removing it.
|
| I think in reality, mobile devices are so small, that
| having a single purpose port just doesn't make sense. The
| 3.5mm port is larger in volume than a USB-C port, and
| USB-C is quite capable of carrying analog audio. I don't
| see why any manufacturer would continue paying the cost
| of a 3.5mm port, when it's so trivially rolled into other
| existing ports on the device.
|
| I also suspect that the current domination of wireless
| headphone would have occurred even if the 3.5mm jack had
| stayed. After all it's trivially easy to adapt a pair of
| wired headphones for a USB-C port or lightning port, and
| yet people still choose wireless headphones.
| enragedcacti wrote:
| I don't disagree with your arguments but its hard not to
| point out the obvious conflict of interest with companies
| dropping the headphone jack while selling their own
| wireless headphones as the solution, both to the lack of
| headphone jack and to the fear of technical issues that
| BT headphones had at the time. I don't think we can
| really use the removal as evidence on its own when Apple,
| Samsung, Google, Xiaomi, Oppo, etc. all got a jump on a
| multi-billion dollar market because of their position as
| a device OEM.
|
| The only real exceptions are Asus and Sony who are both
| targeting niche buyers with most of their phone
| offerings.
| toastal wrote:
| Hilariously, this includes the everyone's favorite
| Fairphone 4 which did away with the 3.5mm jack marketed
| with _sustainability_ despite the waste these earbuds
| produce compared to a good pair of wired IEMs with
| detachable cable that can last a decade. Likely users had
| a pair of fine headphones and felt compelled to _consume_
| and buy a new pair of earbuds just to overcome the hassle
| of losing dongles or having to choose between charging or
| audio.
| laurencerowe wrote:
| 1.44 MB 3.5" floppy drives were becoming problematically
| small in the early 1990s, long before apple dropped the
| floppy drive from the iMac in 1998.
|
| Iomega's Zip and Jaz drives came out in the 1994 and 1995
| and were pretty popular for a while until CD-R and CD-RW
| drives became cheap and reliable enough in the late
| 1990s.
|
| Perhaps the DTP shops were complaining about the iMac
| dropping the SCSI port which all Macs had had up to that
| point for USB, obsoleting their existing external SCSI
| peripherals - scanners as well as various external
| drives.
| tshaddox wrote:
| That seems like the exact opposite of "holding the gun."
| Like they literally didn't force anyone to do anything and
| as far as I know didn't even try to use their influence to
| persuade any other company to remove the jack from their
| devices.
| kristopolous wrote:
| So it's all been a purely stochastic random coincidence
| of cosmic entropy and Apple has been some prescient
| fortuneteller?
|
| The removal of physical keyboards from phones, lack of a
| serviceable battery, notch, death of the floppy, removal
| of ports from laptops, 3.5mm jack, these all would have
| completely happened, exactly like they did, exactly in
| the way they did, without Apple?
|
| Instead I believe we live in a dysfunctional era of
| "designer as absolute dictator" and it turns out copying
| Apple is a safer choice then wandering through the
| wilderness and claiming your own path.
|
| Investors, the board, senior management, very few have
| that courage and the path of Apple knockoff feels less
| risky.
|
| I hate the monoculture through risk aversion, especially
| spearheaded by a company that seems hell-bent on turning
| everything into a locked down consumer-grade appliance
| but I get why it's that.
|
| Why low contrast hairline grey fonts on grey backgrounds
| was the design trend until Apple stopped and why flat
| design where you can't tell if something was interactive
| or not was extremely popular until Apple decided it
| wasn't.
| tshaddox wrote:
| > So it's all been a purely stochastic random coincidence
| of cosmic entropy and Apple has been some prescient
| fortuneteller?
|
| No, the options are not limited to "being a fortune
| teller" and "holding a gun."
| illiarian wrote:
| > Instead I believe we live in a dysfunctional era of
| "designer as absolute dictator" and it turns out copying
| Apple is a safer choice then wandering through the
| wilderness and claiming your own path.
|
| Ironically you try to refute "Apple is prescient" and
| "Apple is holding the gun" with... "Apple is omnipotent,
| and all their decisions turn out right and are slavishly
| copied by others".
|
| > I hate the monoculture through risk aversion,
| especially spearheaded by a company that seems hell-bent
| on turning everything into a locked down consumer-grade
| appliance but I get why it's that.
|
| It's amazing that you call Apple risk-averse when they,
| to quote you, did all these things, often against
| considerable backlash: "The removal of physical keyboards
| from phones, lack of a serviceable battery, notch, death
| of the floppy, removal of ports from laptops, 3.5mm jack"
|
| Don't forget that also it wasn't just "removal of
| physical keyboards from phones". It was launching a
| completely new product for a company that never made such
| a product in a highly competitive market with lost of
| entrenched players.
|
| Risk-averse my ass.
| kristopolous wrote:
| I didn't call apple risk-averse. Maybe you were tired. I
| called the designers of phones at companies like say
| Oppo, Xiaomi or Asus to be risk averse. This creates a
| monoculture because they heed to the Apple design
| patterns as a defensible position to their bosses and
| superiors. So if the product doesn't sell well they can
| point the finger at "well we cloned apple" as opposed to
| "well I insisted on this novel design" which would be a
| bad move.
|
| It's the antithesis lesson of the Edsel. It made (at that
| time) the big 4 recalcitrant, overly conservative, and
| weary of change. Everything that GM acquired ended up
| looking like a giant amorphous indistinguishable blob.
|
| People just want to do well and they get spooked by
| failures so patterns and histories create cultures of
| design. Nobody knows truly what the future is so they end
| up doing "best practice" which is a euphemism for
| cultural conformity.
|
| Apple was not this under Steve. He was pattern breaking
| change in both Steve I and Steve II incarnations. And he
| had a superhero batting average. Why that is is a huge
| conversation outside the scope here but yeah I agree with
| you.
|
| Please reread my comment. Thanks
| mejutoco wrote:
| I think they were more part of the reason Flash died, than
| predicted it.
|
| Also interesting that at the time Jobs did not want native
| apps on the iPhone, only web apps.
| stuaxo wrote:
| I'm pretty sure Adobe did build a version even if it wasn't
| released.
| londons_explore wrote:
| Flash probably wouldn't have died had it not been for Apple's
| refusal to support it.
|
| One could totally imagine a rewritten and modernized version
| of flash that became the dominant web experience (perhaps
| replacing HTML and javascript, which in many ways are
| inferior).
| macintux wrote:
| That's like saying one could imagine a modern U.S. rail
| infrastructure that allows pleasant passenger rail travel
| everywhere you want to go.
|
| Of course it's possible with enough time and money, but
| from all accounts Adobe could not have achieved it.
| tetris11 wrote:
| Anecdotally, it was the reason why I went for Nokia N900 as
| my first smartphone, because I didn't want to give up my
| beloved Newgrounds. Flash turned out to not run super well on
| the device, but by then it was too late and I'd already deep-
| doved into the Linux and on-device programming rabbit hole.
| bick_nyers wrote:
| Anecdote #2: As a kid/preteen I never cared much about the
| iPhone or iPod Touch because I couldn't play Age of War and
| other games on either AddictingGames or Kongregate. Fruit
| Ninja etc. was cool but didn't feel complete enough of a
| game for me. I still had dial-up for a few years after the
| first iPhone released, so I would often save the webpage
| for a flash game, and then I could play it whenever (but
| not wherever).
| johannes1234321 wrote:
| An important thing to Flash's success was the development tool
| by Macromedia.
|
| Designing interactive animations (even games) without any
| programming knowledge was really easy.
|
| I haven't seen anything as intuitive since.
| coldpie wrote:
| > I haven't seen anything as intuitive since.
|
| A handful of folks in yesterday's Scratch thread were saying
| it could be a modern version of what Flash was. I haven't
| used it myself. https://news.ycombinator.com/item?id=35373052
| johannes1234321 wrote:
| Need to check that out. My impression was that it wasn't
| aimed at standalone use. Thanks for the pointer.
|
| For non-interactive things I use synfig
| https://www.synfig.org/ after learning some of the UI
| quirks it is okay for pure animation work without
| interaction.
| goto11 wrote:
| Another important piece of context:
|
| HTML was basically frozen at the time, since this was when
| Internet Explorer had absolute domination of the browser space
| and Microsoft had decided not the develop it further. But
| innovation could still happen in Flash which Microsoft did not
| control, but what still popular enough that IE has to support
| the plug-in.
|
| So W3C was trying to move the web forward through specs which
| were independent of HTML. SVG 1.2 was not just for logos, it
| was intended to be viable as a stand-alone application format
| (which required network communication). Another attempt was
| XHTML 2 which was not backwards compatible with HTML, but
| considered a fresh start.
|
| Firefox changed that by creating competition in the browser
| space, which made innovation in HTML possible again.
| tannhaeuser wrote:
| Don't know if I'd characterize the situation like that. HTML
| has changed very, very little over time: there were the new
| HTML 5 semantic sectioning elements article, main, header,
| footer, section, and very few additional elements with ever-
| changing semantics such as summary/details, dialog and
| menu/menuitem (oddly, a Firefox contribution that took a long
| time to find its way into other browsers, unlike Chrome's).
| Note the so-called "HTML5 outlining algorithm" for inferring
| sections and interpreting heading levels was only removed
| last year from the spec. In contrast, many more additional
| elements came in via the foreign vocabularies that were
| specified using XML ie SVG and MathML.
|
| What utterly changed was CSS and JS, though; you could say
| CSS was expanded to this absurd extend because HTML was bound
| to stay the same during W3C and then WHATWG's organizational
| lock on HTML.
| yafbum wrote:
| It did not die for real until much later.
|
| As one data point, YouTube was still using flash as the default
| player on some old browsers and embedded players in 2015 [1];
| it dropped support only in 2017 [2].
|
| [1] https://www.theverge.com/2015/1/27/7926001/youtube-drops-
| fla...
|
| [2]
| https://old.reddit.com/r/youtube/comments/6puoc2/did_youtube...
| om2 wrote:
| The iPhone was one of the _first_ devices to drop support for
| Flash, not one of the last (well, "dropped" in the sense that
| it literally never had Flash). Arguably the first mainstream
| device to have full powered browsing and no Flash, since the
| introduction of Flash. It was only because of this that desktop
| browsers were eventually able to drop Flash a decade later.
| [deleted]
| STRML wrote:
| Your comment is mostly on point, but the download speeds are
| way off. By the time Flash was really getting big, everyone was
| on 56k, (rarely) ISDN, or ~1mbps broadband of one type or
| another. But even with 56k, you're getting 5kBps. So a 45-100kB
| download was 20sec at most, and 500kB was about 2 minutes.
|
| That said vector graphics and extreme sound compression was
| just how shit got done. In those days gaming and entertainment
| online was all about CD deployment, extreme delta patching, low
| bit rate audio (Teamspeak et al) and vector graphics when
| possible.
|
| I miss those days. On top of it not yet being spoiled by
| billion dollar businesses, the extreme constraints meant that
| creative minds could excel far above and beyond corporate
| types. And that's why the internet had the reputation it did.
| The ones who were making waves were individuals and small
| development houses that were founder-driven. It's nothing like
| today.
| dspillett wrote:
| _> By the time Flash was really getting big, everyone was on
| 56k, (rarely) ISDN, or ~1mbps broadband of one type or
| another._
|
| From my memory1 the big flash days in terms of my interaction
| with stuff created with it, started as I was upgrading from
| 36k6 to 56k at home (though I had faster access at University
| sites) and ended around the time I bumped up from 512kbit to
| 2mbit downstream.
|
| *> But even with 56k, you're getting 5kBps.
|
| Usually less. It was rare to connect faster than 45k on most
| lines, 42k on some.
|
| Of course once upgraded (first from ~56k modem to 512kbit
| ADSL), and before upgrading at home but using faster
| connections at uni/work, there were other issues: often the
| sites we were getting the flash content from would not
| deliver nearly as fast as the new line could receive23 so a
| 1/2Mbyte+ flash app could still take a noticeable time to
| arrive.
|
| ----
|
| [1] UK here, landline internet tech rollout progress varied a
| lot between territories
|
| [2] again, UK: some other-end bandwidth issues (and latency
| issues) might have been experienced differently where you are
| due to differences in [inter]national peering arrangements
|
| [3] or if they did, there was enough latency to mask a chunk
| of the bandwidth benefit
| hadlock wrote:
| I remember getting 3.5-4.5kBps. Usually on the lower end of
| that scale. 5 was an exceptionally lucky day.
| grishka wrote:
| Flash did have raw TCP sockets support. It did have _some_
| security built in though. When you opened a socket, the flash
| player itself would first connect to the address and port you
| specified, send the string ` <policy-file-request/>` and expect
| the server to respond with the contents of the crossdomain.xml
| file (the same kind used for HTTP requests from flash) allowing
| the app to connect. It would then close the connection, and, if
| it's satisfied with the cross-domain policy, reconnect again
| and hand this socket over to the app.
| justinclift wrote:
| Nicely, the Ruffle project (flash player written in Rust),
| seems like it has legs and plays a substantial amount of Flash
| content:
|
| https://github.com/ruffle-rs/ruffle
|
| They released their first "progress report" a few weeks ago:
|
| https://ruffle.rs/blog/2023/03/12/progress-report.html
|
| Seems like good news. :)
| mananaysiempre wrote:
| Not the first attempted Flash reimplementation[1,2,3]. The
| GNU one didn't work all that well back in the day as far as I
| remember, but then Flash was a moving target at the time.
|
| [1]: https://www.gnu.org/software/gnash/
|
| [2]: http://lightspark.github.io/
|
| [3]: https://github.com/mozilla/shumway
| justinclift wrote:
| Thanks. I'm aware of some of the earlier ones, as I was (
| _ages ago_ ) involved in a swf generation project called
| libming. Far before Adobe started open sourcing its swf
| generation code.
|
| So, kept an eye on some of the other attempted players, but
| they didn't really seem to gain enough traction/adoption to
| really go places.
|
| That's why I think this Ruffle thing has legs (eg "is going
| places"), as it's showing the right signs of actually
| getting adoption and traction. :)
| pol_osei wrote:
| NSO Group still figured this out and built Pegasus in any case.
| bawolff wrote:
| Well now svgs support web sockets and webrtc, so.... not that
| crazy.
| cenriqueortiz wrote:
| scalable, not static (vector graphics)
| jsdeveloper wrote:
| I personally think svg had so much potential for the web, only if
| they had flexbox kind of dom model. the gap between UX design and
| final product would have been significantly reduced. one would
| simply design apps in inkscape and add funtionality later to it.
| NelsonMinar wrote:
| I think what's astonishing about SVG is it was implemented in the
| early 2000s, then nearly forgotten. But it still worked in
| browsers and had a resurgence in the early 2010s. Partly because
| of the end of Flash, partly because of D3.js. That fallow period
| between 2003-2011 is remarkable to me, I'm surprised it survived
| it.
|
| One history of this era:
| https://medium.com/siliconpublishing/the-fall-and-rise-of-sv...
| vrglvrglvrgl wrote:
| [dead]
| animesh wrote:
| Every time I read about SVG, I remember those glorious 3 months I
| spent making a custom chart wrangling d3 and SVG. Nothing has
| ever come close in 6 years after that.
| Rodeoclash wrote:
| Such an exciting time to be a programmer. Although I'd picked
| Director / Lingo as the horse to back instead of Flash. At the
| time, circa 2002 or so, Director had much more capability than
| Flash did but I don't remember it having a very good pathway to
| the web.
| sgerenser wrote:
| Wasn't it possible to put Director projects on the web with the
| "Shockwave" plugin? I recall it actually being fairly popular
| for a brief time until Flash completely took over.
| sirspacey wrote:
| Yep! Built my first startup with it. The install process was
| painful & opaque to users, so it was a big deal when Flash
| launched because it solved the problem & killed Shockwave
| fast.
| pupppet wrote:
| I wish they would have split the format into multiple filetypes,
| SVG for static vector imagery and SVGX or whatever for all the
| other bullshit. I shouldn't need to worry about logo.svg being
| some attack vector.
| bawolff wrote:
| I mean, if you include it as an <img> tag that is already the
| case.
|
| Although i guess you still have the problem of serving the
| actual svg file. There are some http headers that can help with
| that (csp)
| ManiAbod wrote:
| [dead]
| IncRnd wrote:
| > it's mostly assumed that you're talking about static vector
| graphics images
|
| SVG stands for "scalable vector graphics" not for "static vector
| graphics". Scalable files, but not static or pixel oriented files
| can be scaled to a higher resolution without losing fidelity. You
| lose fidelity, when increasing the display size of a bitmap.
| Think of how your company logo appears, when zooming-in on a
| 16x16 icon version.
| chrisweekly wrote:
| Every time SVG comes up I'm reminded of this awesome preso by the
| inimitable Sarah Drasner; it's 6 years old but still relevant and
| -- I'd wager -- still eye-opening for many, even in this crowd.
| Enjoy!
|
| https://slides.com/sdrasner/svg-can-do-that
| macintux wrote:
| That's great, thanks for sharing it.
|
| I had the pleasure of working with Sarah at Basho long ago, one
| of the rare people who are as talented creatively as they are
| technically.
| pimlottc wrote:
| Man, this deck really brings back feelings of the flash-filled
| internet of old...
| justinator wrote:
| All the interaction is broken for me (in Firefox)
| illiarian wrote:
| I'm also reminded of how rocky SVG's road was, and is: Me and
| SVG by Amelia Bellamy-Royds:
| https://codepen.io/AmeliaBR/post/me-and-svg
| mamcx wrote:
| My question is if SVG could be viable to make GUI, and if is
| possible to use it cross-platform without a web view?
| dekhn wrote:
| Ah yes- I remember the predecessor to this was VRML, which
| started out as mostly-static and then gained a number of
| scriptability nodes. at the time, it was still unclear how
| interactive, graphical web applications would be made, and it
| seemed like markup languages could gain scriptability
| (https://www.bitmanagement.de/developer/spec/vrmlscript/vrmls...
| so around 1996!)
|
| SVG is a wonderful standard but it seemed pretty clear that all
| the scripting should be done in javascript, with SVG as an web
| element tag or document type.
| lxgr wrote:
| Maybe I'm lacking the imagination for truly nefarious things, but
| what would be the problem with raw socket access in the browser?
|
| Modern browsers can already communicate peer to peer (via WebRTC)
| and DDoS other web servers (via CORS failures or good old
| embedding).
|
| Is the main concern the increased attack opportunity of non-web
| servers?
| justinclift wrote:
| The ad industry would surely figure out some way to load stuff
| for fingerprinting / user tracking with it. :(
| ec109685 wrote:
| Browser can't mediate raw socket connections.
| Matheus28 wrote:
| Yes but also web servers. You could make requests to them
| (although you wouldn't have access to the user cookies) and
| bypass CORS.
|
| There's some more details in the WebSocket RFC for why it's a
| bad idea to give access to tcp/udp sockets to untrusted code
| unless the receiving server is willing to receive them.
| lxgr wrote:
| Without cookies, is that really a problem though?
|
| You can already cause OPTION requests, if the concern is
| denial of service (although these are presumably much easier
| to filter out at a load balancer or similar than arbitrary
| unauthenticated requests).
| kevingadd wrote:
| You can use raw sockets to exploit vulnerabilities in arbitrary
| devices on the user's local network, like routers and IoT
| devices, which frequently have fixed default IPs
| bawolff wrote:
| You can already do that with svgs (in many cases not all).
|
| Although recently browsers changed rules for connecting to
| internal ips
___________________________________________________________________
(page generated 2023-03-31 23:02 UTC)