9 ms·
F- me. I love this. This is a really important message. It's like Jonathon Blow asks: why does Photoshop take longer to load today than it did in the 90s despi
by movedx 6y ago
F- me. I love this. This is a really important message.
It's like Jonathon Blow asks: why does Photoshop take longer to load today than it did in the 90s despite the (insane) advances in hardware?
I believe it's due to a bunch of things, but over complicating the entire process is one of the big issues. If people (developers/engineers) would only sit back and realise just how much computing power they have available to them, and then realised that if they kept things simple and efficient, they could build blazing fast solutions over night.
I cringe thinking about the wasted opportunities out there.
- spondyl 6y agoIf you haven't come across it, you might appreciate this post: https://adamdrake.com/command-line-tools-can-be-235x-faster-than-your-hadoop-cluster.html https://adamdrake.com/command-line-tools-can-be-235x-faster-...
- movedx 6y agoI'll give it a read. Thank you. (I like anything that echos well in this chamber of mine... just kidding ;)
- adflux 6y agoCompare photoshop between the 90s and now. 10x on features. Size of photos grown exponentially as well.
- e_proxus 6y agoPerhaps, but size of photos should affect load times when starting the app (and in my opinion, so shouldn’t most feature either, but that depends on your architecture I suppose).
- thefz 6y agoYeah Jonathan Blow isn't exactly a luminary in computer science. I once read him going on a meltdown over linux ports because "programming is hard". This is the kind of minds Apple enable, i.e. "why isn't this easy?"
- movedx 6y agoIt's easy to take a stab at someone online, behind a keyboard, but I'd suggest you show us all your work and we'll judge your future opinions based on it.
- majjgepolja 6y agopreferably future work and dreams and ramblings too.. preferably over a twitch stream..
- thefz 6y agoBy no metric I am comparatively as successful as the guy, but I am still able to disagree on his point that Linux is held back by its tools. The fact that he did not want or had the time to learn Linux's tooling don't mean anything in particular except that he's either very busy or very lazy. Any interview I read with him he's just ranting and crying over this or that "too complex" matter. If he does not want to deal with the complexity of modern computers, he should design and build board games. As an example, read how the one-man-band of Execution Unit manages to, in house, write and test his game on three operating systems. https://www.executionunit.com/blog/2019/01/02/how-i-support-windows-mac-and-linux/ https://www.executionunit.com/blog/2019/01/02/how-i-support-... It's not a matter of "this is too hard", Blow just does not want to do it, let's be honest.
- neuronic 6y agoThe entire point of computers is to make things easy. The Apple question "why isn't this easy" is missing from 95% of UX in modern software. Stop acting as if software devs are the only users of software. And even then: computers should do work and not produce work or mental overhead.
- otabdeveloper4 6y agoAre you implying Apple software and devices are "easy"? I think that's marketing, and not borne out of real experience. Try setting up a new Apple device, there is very little in IT that is as frustrating and confusing.
- movedx 6y agoI see the point you're trying to make, however the increase in features (and their complexity) plus the size of the average graphic that a high-end professional has maybe grown by 300-500% since the 90s. In fact I'll tell you what: I'll give you a growth of 10,000% in file sizes and feature complexity since the since the 90s... ... computational power has grown ~%259,900 since the 90s. The point being made is this: Photoshop does one job and has one focus should), yet it has gotten slower at doing that one job and not faster. Optimising the code AND introducing incredibly hardware to the consumer market should see Photoshop loading in milliseconds, in my opinion.
- tasssko 6y agoTo me it feels as though the last decade and a half computational power has not grown vertically. Instead Intel and AMD have grown computational power horizontally (i.e adding more cores). I'm looking at the difference the M1 has had on compute performance as a sign X86 strayed.
- rcxdude 6y agoIt has also grown substantially vertically: single-core speeds keep going up (about 10x from a decade and a half ago), even as core count increases. (and M1 is not substantially faster than the top x86 cores, the remarkable thing is how power efficient it is at those speeds).
- phonon 6y agoThis was state of the art 15 years ago. https://en.wikipedia.org/wiki/Kentsfield_(microprocessor) https://en.wikipedia.org/wiki/Kentsfield_(microprocessor) Modern processors are nowhere near 10x faster single core. Maybe 4x. If you take into account performance/watt you do get 10x or better.
- irthomasthomas 6y agoThe 3.4ghz P4 was released 2004 https://en.m.wikipedia.org/wiki/List_of_Intel_Pentium_4_processors https://en.m.wikipedia.org/wiki/List_of_Intel_Pentium_4_proc... If the trend had continued we would have 1500Ghz cores by now.
- lostlogin 6y ago> Size of photos grown exponentially as well. Photoshop can grow them itself and the below looks no and thread are amazing. https://news.ycombinator.com/item?id=26448986 https://news.ycombinator.com/item?id=26448986
- b212 6y agoBack in the day I was using Intel Celeron 333 MHz and then AMD Duron 800 MHz. I did not know how to use Winamp playlists because Winamp has been "an instant" app for me, I just clicked on a song and it played within miliseconds. That was my flow of using Winamp for years. This did not change between the Celeron and Duron, the thing was instant on both Celeron and Duron. Then Winamp 3 came out and I had to use playlists because a song once clicked took good second or two to start playing. Winamp 5 from 2018 still starts slower than my beloved 2.73* did 20 years ago. On Celeron 333 and 5400 RPM HDD with 256 MB of RAM. I think even the good old Winamp 2.x is not as fast as it was on Windows 98/XP. Something went wrong. * not sure if it was 2.73, but I think so Note: I realise Winamp 3 was crappy as hell, but still...
- mlok 6y agoThis is why I did choose and stick to coolplayer at the time (before I converted to Linux) : no install, so light, so fast, and it had everything I needed. I loved it when I could find such an elegant a versatile app. I don't need to get "more" every 6-12 months. I learned that every time you gain something, you also loose something without realizing it, because you take it for granted.
- movedx 6y agoThis is sad to read :( I remember having a 486 my self and everything being so damn snappy. Sigh.
- yowlingcat 6y agoAre you me? Perhaps a little bit later on and a different set of signifiers (foobar2000/xp/celeron 1.7) but the same idea. Things were so much snappier back then than on my previously-SOTA MBPR 2019. Sigh.
- desktopninja 6y agoWinamp 2.73 is still my default player and works Win10 Pro 64x build $LATEST. I will never change. It is 2MB pure gold.
- rograndom 6y agoI was at a graphic design tradeshow back in the mid 90's and there was a guy there demonstrating this Photoshop alternative called Live Picture or Live Photos or something like that. And he had a somewhat large, at the time, print image on the screen, probably 16mb or so, and was zooming in and out and resizing the window and it was redrawing almost instantly. This was AMAZING. Photoshop at the time would take many many seconds to zoom in/out. One person in the group asked, "Yeah, but how much memory is in that machine?" The guy hemmed and hawed a bit and finally said "It's got a bit, but not a lot, just 24mb." "Yeah, well that explains it." Nobody had 24mb of RAM at that time. Our "big" machine had 16mb.
- brandonmenc 6y agoThis might be a long shot, but did the demo include zooming in on a picture of a skull to show a message written on one of the teeth? If so, I've been trying to find a video of it for years.
- rograndom 6y agoNo, it was a photo of a building. The "demo" was the guy right there playing with the software, no video.
- shrubble 6y agoLive Picture was the first to use what I think are called image proxies, where you can have an arbitrarily large image and only work with the screen-image sized image. Once you have applied all the changes and click save, it will then grind through the full size image if needed. A feature that Photoshop has since added, but it appeared in Live Picture first.
- rograndom 6y agoYup, that must have been it. I think Adobe implemented that as a feature into Photoshop within a year of us seeing that other software.
- LdSGSgvupDV 6y agoThe problem is that if everything is simple enough. How to set your goals this year? Complication creates lots of jobs and waste. This makes us not starved but others somewhere in the world or in the future when resource all gone.
- movedx 6y agoI see where you're coming from with this, but this is getting into the realm of social economics and thus politics. To solve the problem you're describing we need to be better at protecting all members of society not in (high paying) jobs, such as universal basic income and, I don't know, actually caring about one another. But I do see your point, and it's an interesting one to raise.
- mason55 6y agoI think there are two things that cause this. One is that there’s a minimum performance that people will tolerate. Beyond that you get quickly diminishing user satisfaction returns when trying to optimize. The difference between 30 seconds and 10 seconds in app startup time isn’t going to make anyone choose or not choose Photoshop. People who use PS a lot probably keep it open all day and everyone else doesn’t care enough about the 20 seconds. The second problem is that complexity scales super-linearly with respect to feature grown because each feature interacts with every other feature. This means that the difficulty of optimizing startup times gets harder as the application grows in complexity. No single engineer or team of engineers could fix the problem at this point, it would have to be a mandate from up high, which would be a silly mandate since the returns would likely be very small.
- dzonga 6y agoJonathan Blow's Preventing the Collapse of Civilization [0] is an excellent talk, on how too much abstractions destroy knowledge. This is a problem with the software industry today. we have forgotten how to do the simple stuff, that works and is robust. [0]: https://www.youtube.com/watch?v=ZSRHeXYDLko https://www.youtube.com/watch?v=ZSRHeXYDLko
- movedx 6y agoThat was a really great watch, thanks!
- yourapostasy 6y ago> If people (developers/engineers) would only sit back...* It is a matter of incentives. At many companies, developers are rewarded for shipping, and not for quality, efficiency, supportability, documentation, etc.* This is generally expected of a technology framework still in the profitability growth stage; once we reach a more income-oriented stage, those other factors will enter incentives to protect the income.
- movedx 6y agoMaybe. I'm not convinced. I think you can build something complex quickly and well at the same time. I built opskit.io in three weeks. It's about 90% automated.
- yourapostasy 6y ago> I think you can build something complex quickly and well at the same time. One definitely can. It's a real crapshoot whether the average developer can. For what it's worth, I consider myself a below-average developer. There is no way I could grind l33tcode for months and even land a FAANG interview. I can't code a red-black tree to save my life unless I had a textbook in front of me. Code I build takes an enormous amount of time to deliver, and So. Much. Searching. You get the picture. I'm a reasonably good sysadmin/consultant/sales-engineer; all other roles I put in ludicrous amounts of effort into, to become relevant. Good happenstance I enjoy the challenge. For the time being however, there is such enormous demand for any talent that I always find myself in situations where my below average skills are treated as a scarcity. Like near-100 headcount testing organization in a tech-oriented business with an explicit leadership mandate to automate with developer-written integration code from that organization...and two developers, both with even worse skills than mine. When a developer balks at writing a single regular expression to insert a single character into the front of an input string, that's nearly the definition of turning one wrench for ten years; while I'm slow and very-not-brilliant, I'm a smart enough bear to look up how to do it on different OS' or languages and implement it within the hour. This is not unusual in our industry. That's why FizzBuzz exists. That's just to clear the bar of someone who knows the difference between a hash and a linked list. To clear the bar of "something complex quickly and well at the same time" though, I've found it insufficient to clear only the technical hurdle and obtain consistent results. The developer has to care about all the stakeholders. Being able to put themselves into the shoes of the future developers maintaining the codebase, future operators who manage first line support, future managers who seek summarized information about the state and history of the platform, future users who apply business applications to the platform, future support engineers feeding support results back into developers, and so on. That expansive, empathetic orientation to balance trade-offs and nuances is either incentivized internally, or staffed at great expense externally with lots of project coordination (though really, you simply kick the can upstairs to Someone With Taste Who Cares). I'd sure as hell like to know alternatives that are repeatable, consistently-performing, and sustainable though. Closest I can think of is long-term apprenticeship-style career progression, with a re-dedicated emphasis upon staffing out highly-compensated technical writers, because I strongly suspect as an industry we're missing well-written story communication to tame the complexity monster; but that's a rant for another thread.
- darthrupert 6y agoHas Jonathan Blow actually measured these things or is this perhaps a skewed memory?
- comeonseriously 6y ago"But developer productivity!" Most orgs (and most devs) feel developer productivity should come first. They're not willing to (and in a lot of cases, not able to) optimize the apps they write. When things get hard (usually about 2 years in) devs just move on to the next job.