Software disenchantment


  • 🚽 Regular

    :(


  • 🚽 Regular


  • Java Dev

    Android system with no apps takes almost 6 Gb. Just think for a second how obscenely HUGE that number is.

    Windows 95 was 30Mb. Today we have web pages heavier than that! Windows 10 is 4Gb, which is 133 times as big. But is it 133 times as superior? I mean, functionally they are basically the same. Yes, we have Cortana, but I doubt it takes 3970 Mb. But whatever Windows 10 is, is Android really 150% of that?

    I would like to know what world he lives in where Windows takes up 4GB of harddrive space on a standard install.


  • Discourse touched me in a no-no place

    The thing is… we're the people to blame for this. Anyone who just slaps shit together and then wraps it all in layers of indirection to hide the shittiness is entirely to blame. Using your latest cool language to generate WASM that you then put inside Electron to deploy to users? YOU ARE TO BLAME! You could have just generated native code from the start and not had nearly so many performance problems.

    I work with systems that are swimming against this tide of shit. We have hard limits on memory for code on our main system (32kiB per core, no negotiation; embedded C and ASM are the only options) and our controller system (which isn't memory limited in any sane way) is being ported away from horribly wasteful systems (Python) to things that give far better performance (Java, which we've measured to be really fast in practice). We do things that are much closer to the limits of what practical computation can achieve, but doing so requires ditching those lazy bad habits and actually studying the performance of what's happening in reality. That's pretty hard, but we just gotta suck it up because we're software engineers and not just a bunch of code monkeys.

    The code monkeys can have a few peanuts.


  • Considered Harmful

    Oh hey, that's tonsky. I like his font.


  • Notification Spam Recipient

    @Atazhaia said in Software disenchantment:

    Android system with no apps takes almost 6 Gb. Just think for a second how obscenely HUGE that number is.

    Windows 95 was 30Mb. Today we have web pages heavier than that! Windows 10 is 4Gb, which is 133 times as big. But is it 133 times as superior? I mean, functionally they are basically the same. Yes, we have Cortana, but I doubt it takes 3970 Mb. But whatever Windows 10 is, is Android really 150% of that?

    I would like to know what world he lives in where Windows takes up 4GB of harddrive space on a standard install.

    Yeah! I can barely fit it into an 8 GB partition with wimboot hacks and Windows SxS trimming hacks!


  • 🚽 Regular

    @pie_flavor said in Software disenchantment:

    Oh hey, that's tonsky. I like his font.

    I use it in Visual Studio and Notepad2-mod, and I have this on this site's custom CSS:

    code { font-family: 'Fira Code'; }
    

    And even though I didn't have a corresponding @font-face because it's already installed, I just added @import url(https://cdn.rawgit.com/tonsky/FiraCode/1.205/distr/fira_code.css); (which does that for me) for mobile and for if I ever use another computer.


  • Discourse touched me in a no-no place

    @Zecc You do realize that this sort of screwing around with pulling fonts over the internet is one of the things that makes programs resource-expensive?


  • Discourse touched me in a no-no place

    @thegoryone said in Software disenchantment:

    both eyes on design and only an afterthought on performance

    That's fine… but then the result should be turned over to other people who optimize the fuck out of the code.


  • kills Dumbledore

    @dkf said in Software disenchantment:

    @thegoryone said in Software disenchantment:

    both eyes on design and only an afterthought on performance

    That's fine… but then the result should be turned over to other people who optimize the fuck out of the code.

    If you do it that way round you're probably not getting the fastest interface possible, as it's pretty hard to turn around early design decisions once it's feature complete. See your own experiences with having to ri out Python and replace it with Java. That's more than just optimisation


  • Discourse touched me in a no-no place

    @Jaloopa said in Software disenchantment:

    See your own experiences with having to ri out Python and replace it with Java.

    We still have to have Python in the mix at the front end; it's what existing user scripts are written in and we've contractual commitments to support it too. Which is possibly fine: they give us a description of what they want done and the parts that require major processing or data movement will be in Java or in the C/ASM that gets deployed to the custom hardware, of course. (The front end needs to do quite a lot of work to plan how to deploy the code to the hardware, and there's a lot of data to ship back and forth. Yes, the system does effectively partition code space from data space.)


  • 🚽 Regular

    @dkf said in Software disenchantment:

    @Zecc You do realize that this sort of screwing around with pulling fonts over the internet is one of the things that makes programs resource-expensive?

    😆

    I expect the browser to be smart enough not to pull a font that's already installed in this computer (I might be wrong; how would it know it's the same font, for one?).

    In any case this is a conscious choice I've made on my own.


  • Java Dev

    @Zecc said in Software disenchantment:

    I expect the browser to be smart enough not to pull a font that's already installed in this computer

    You have unusually high expectations on software for someone who frequents WTDWTF.


  • Discourse touched me in a no-no place

    @Zecc said in Software disenchantment:

    I expect the browser to be smart enough not to pull a font that's already installed in this computer

    I'm… going to be hesitant to assume that; too many weird edge cases. But all the complexity to do with loading and caching all that stuff definitely adds to the computational expense.


  • Banned

    Windows 95 was 30Mb. Today we have web pages heavier than that! Windows 10 is 4Gb, which is 133 times as big. But is it 133 times as superior? I mean, functionally they are basically the same.

    I'm not sure I want to read an article by a guy who thinks Windows 95 and Windows 10 are "functionally basically the same".


  • Discourse touched me in a no-no place

    @Gąska From 50k feet, they're about the same: both are operating systems that let you interact with the computer via a graphical interface. The details are different of course.


  • Banned

    @dkf I'm still not convinced I should read an article by a guy who looks at everything from 50k feet away.


  • ♿ (Parody)

    @dkf said in Software disenchantment:

    The thing is… we're the people to blame for this. Anyone who just slaps shit together and then wraps it all in layers of indirection to hide the shittiness is entirely to blame. Using your latest cool language to generate WASM that you then put inside Electron to deploy to users? YOU ARE TO BLAME! You could have just generated native code from the start and not had nearly so many performance problems.

    Yeah. The second link explains that pretty well I think.

    We do things that are much closer to the limits of what practical computation can achieve, but doing so requires ditching those lazy bad habits and actually studying the performance of what's happening in reality. That's pretty hard, but we just gotta suck it up because we're software engineers and not just a bunch of code monkeys.

    The irony here is that stuff like the electron paradigm really has enabled something like blakey's anti-elitism in programming at the expense of getting more of the stuff he really hates. Which is not to say that we shouldn't fight the good fight against crap but we should also realize why it's there and the tradeoffs required to get rid of it.



  • @Zecc This guy just don't understand how things progress. A lot of stuff that was better in the past was also expensive. Progress bring cheaper, worse alternatives, but users are adopting it because it's cheaper, and for most people cost is important.

    He mentioned the Android keyboard, and forgot that it doesn't just show key buttons, it has dictionaries, it has that slide thing that predicts what I'm trying to say, it does a lot of stuff. I would say text to speach and voice recognition, but I think it is the OS that is doing that.

    He mentioned slack, but there are still a lot of lighter alternatives - for some reason users are choosing slack. And easier to code tools, with the trade-off of producing a bloated monster, may have been important for them to achieve that with whatever amount of funding they had.

    Also, I still remember how buggy the old C/C++ programs in the 90s were. It's easy to get buffer overflows with that, and that screen that the program performed an illegal operation and needs to get closed was popping all the time.


  • Banned

    @sockpuppet7 said in Software disenchantment:

    for some reason users are choosing slack

    I think it's emoji reactions. When you have 50 identical products to choose from (and you have when it comes to chat software), you go with the one where sending lolcats is easiest.


  • BINNED

    @Gąska said in Software disenchantment:

    lolcats

    0_1537270828125_95f99fb1-d95a-4377-9836-34b8b278d2d2-image.png



  • @Gąska said in Software disenchantment:

    @sockpuppet7 said in Software disenchantment:

    for some reason users are choosing slack

    I think it's emoji reactions. When you have 50 identical products to choose from (and you have when it comes to chat software), you go with the one where sending lolcats is easiest.

    Company makes me use skype for business, it has the annoying emojis, that I wanted to disable, but it's grayed out. Let me tell you what I miss from slack:

    • slack preserved a good amount history in the window when I opened a chat with someone;
    • it allowed us to upload files
    • when I pasted code there, the formatting wasn't broken
    • I could send URLs to coworkers, now they blocked it with some stupid secinfo policy

  • Discourse touched me in a no-no place

    @sockpuppet7 said in Software disenchantment:

    slack preserved a good amount history in the window when I opened a chat with someone;

    Huh. It always seems to be bitching at me about the history being short when I open it. OK, I guess the room isn't on the paid tier, but I'm not the person to pester about it. Seriously. Want to send nastygrams to the owner? Sure. Badgering all the users as well? Fuck. Off.


  • ♿ (Parody)

    @sockpuppet7 said in Software disenchantment:

    @Gąska said in Software disenchantment:

    @sockpuppet7 said in Software disenchantment:

    for some reason users are choosing slack

    I think it's emoji reactions. When you have 50 identical products to choose from (and you have when it comes to chat software), you go with the one where sending lolcats is easiest.

    Company makes me use skype for business, it has the annoying emojis, that I wanted to disable, but it's grayed out. Let me tell you what I miss from slack:

    • slack preserved a good amount history in the window when I opened a chat with someone;
    • it allowed us to upload files
    • when I pasted code there, the formatting wasn't broken
    • I could send URLs to coworkers, now they blocked it with some stupid secinfo policy

    That all just sounds like bloat. HOW MANY MBs DOES THAT ALL USE?!?! YOUR STILL JEST SENDING MASSAGES TO EACH OTHER!


  • Banned

    @sockpuppet7 said in Software disenchantment:

    • slack preserved a good amount history in the window when I opened a chat with someone;

    If I need more than one day of history, I write it down somewhere where I don't need to worry about it. Bug tracker, email, text file on desktop...

    • it allowed us to upload files

    Skype doesn't? :wtf:

    • when I pasted code there, the formatting wasn't broken

    Okay, I agree that this is one genuinely good feature for programmers. But there are like two dozen other chat software that can do the same.

    • I could send URLs to coworkers, now they blocked it with some stupid secinfo policy

    That's not a problem with Skype, that's a problem with stupid secinfo policies. At least it prevents you from doing that at all, instead of inviting you for 1 on 1 meeting with security officer.


  • Java Dev

    @Gąska said in Software disenchantment:

    If I need more than one day of history, I write it down somewhere where I don't need to worry about it. Bug tracker, email, text file on desktop...

    I like skimming what was written when I was away. So that, for example, I know that my line manager spent 3 hours debugging a prod upgrade last Saturday.



  • @Gąska said in Software disenchantment:

    That's not a problem with Skype, that's a problem with stupid secinfo policies. At least it prevents you from doing that at all, instead of inviting you for 1 on 1 meeting with security officer.

    Not being configurable by stupid security people is a feature.


  • Banned

    @sockpuppet7 not being configurable doesn't prevent it from becoming policy.



  • @dkf said in Software disenchantment:

    That's fine… but then the result should be turned over to other people who optimize the fuck out of the code.

    You could just design the product before writing the code. I know, I know, shocking controversial opinion there.



  • @dkf said in Software disenchantment:

    @Gąska From 50k feet, they're about the same: both are operating systems that let you interact with the computer via a graphical interface. The details are different of course.

    Well by that logic, Macintosh 1.0 is "basically the same" too. And it (mostly) fit in a 64k ROM chip.



  • @boomzilla said in Software disenchantment:

    Yeah. The second link explains that pretty well I think.

    ... except it does the horrible "we are to blame!" thing which pisses me off, because no, I don't fucking do that. Don't cram me in your "we". You don't fucking know me.

    #PetPeeve.


  • ♿ (Parody)

    @blakeyrat said in Software disenchantment:

    @boomzilla said in Software disenchantment:

    Yeah. The second link explains that pretty well I think.

    ... except it does the horrible "we are to blame!" thing which pisses me off, because no, I don't fucking do that. Don't cram me in your "we". You don't fucking know me.

    #PetPeeve.

    :wambulance: But you are still advocating for making stuff easier so that more people can develop which in turn leads to crap in its own way.


  • Discourse touched me in a no-no place

    @blakeyrat said in Software disenchantment:

    Well by that logic, Macintosh 1.0 is "basically the same" too. And it (mostly) fit in a 64k ROM chip.

    Yep. And there are people who don't really see the difference between them. We do. We're detail-oriented folks.



  • @boomzilla said in Software disenchantment:

    The irony here is that stuff like the electron paradigm really has enabled something like blakey's anti-elitism in programming at the expense of getting more of the stuff he really hates.

    Not even close. In fact I don't even know where you're coming from with this.

    Compare creating an Electron application with, for example, a Access application-- it's a night and day difference. The sheer number of moving parts you have to keep in your head to make a modern JS app is an order of magnitude higher. Hell you can't even START an Electron app without:

    • Knowing the CLI
    • Knowing HTML
    • Knowing CSS
    • Being able to navigate the river of NPM dependencies

    You don't need any of that shit to start an Access app, which isn't to say Access it perfect because you do need to know the fundamentals of storing tabular data.

    The goal I want software tools to achieve is to allow anybody with an information problem to solve it, themselves, using tools that they can figure out in, say, a couple hours. Electron isn't even in the same ballpark. Not even remotely. I mean Jesus, it doesn't even have GUI UI builder. How could you even think it's even a million miles from what my goals are?

    The point of Electron is to give developers who already know the JavaScript tooling to make cross-platform desktop applications. Which is fine, kind of, even though most of those applications end up sucking. But you have to already know the JavaScript tooling to start, and that's not even remotely close to being "non-elite".


  • ♿ (Parody)

    @blakeyrat said in Software disenchantment:

    Not even close. In fact I don't even know where you're coming from with this.

    I know. That's why we call you an idiot moron a lot.



  • @boomzilla said in Software disenchantment:

    But you are still advocating for making stuff easier so that more people can develop which in turn leads to crap in its own way.

    I want stuff to be easier (and BTW Electron is not that), but I also want tools to do the right thing by default, which Electron certainly doesn't do-- see my constant bitches about how almost no Electron apps get right-clicking the taskbar preview in Windows correct. Probably because they're all written by effete latte-sipping OS X developers who have no fucking clue how Windows works.

    And again, Access is a bad example because it's also not very close to what I want, but if you build an app in Access, at least it does all the basic shit right. It has a GUI UI builder. It doesn't require CLI knowledge. Etc. Etc. It was WAY closer to the ideal in 1997 than Electron is in 2018.



  • @boomzilla said in Software disenchantment:

    I know. That's why we call you an idiot moron a lot.

    Do you honestly believe an Electron app is easier to write than, for example, a WinForms app?


  • ♿ (Parody)

    @blakeyrat said in Software disenchantment:

    @boomzilla said in Software disenchantment:

    I know. That's why we call you an idiot moron a lot.

    Do you honestly believe an Electron app is easier to write than, for example, a WinForms app?

    Do you honestly believe that I believe that? I barely know what "WinForms" is. I've never written anything with either, to my knowledge. That's besides the point. This "WinForms" nonsense is just you putting up red herrings and missing the entire point.


  • Banned

    @dkf said in Software disenchantment:

    @blakeyrat said in Software disenchantment:

    Well by that logic, Macintosh 1.0 is "basically the same" too. And it (mostly) fit in a 64k ROM chip.

    Yep. And there are people who don't really see the difference between them. We do. We're detail-oriented folks.

    While this is fine on its own, you definitely shouldn't take software design tips from that kind of people.



  • @blakeyrat said in Software disenchantment:

    @dkf said in Software disenchantment:

    That's fine… but then the result should be turned over to other people who optimize the fuck out of the code.

    You could just design the product before writing the code. I know, I know, shocking controversial opinion there.

    Well duh. That's not Agile.


  • Considered Harmful

    Eh, it's one of those things again. I mean, I do agree, sort of. But it's all as useful as farting in the wind. The one who does it probably feels enlightened, and that's about it. Until the wind terns, at any rate.

    There was a time I very much liked to push "They Write The Right Stuff" to everyone who cared to listen to me. I still believe we'd be better off that way, but one shouldn't overly bother other people with any sort of beliefs. They probably don't anymore, either.

    I love, though, how the reply attempts to shift the blame from we, the infallible developers, onto some unclear concept called users. Developers and users are not disjoint sets. In fact, developers usually use way more software that your average user does, and also update frequently and explore alternatives, and understand at least a small part of the problem at hand, and therefore are directly and much more impacted by bad software. It's the developers foremost that should need the cluebat.

    Rant
    But that's hopeless. Really, it can't be helped. *Frist*, you'd have to find someone who has complete grasp of the situation at hand. That's impossible. Then you'd need to agree what said education will look like. We're notoriously shit about standards. And everything about software engineering sucks - not just speed and reliability, but security, presentation and longevity also. And then you'd have a good half of any given subset of people pushing back against said standards (often citing costs, but at the same time worrying about the world we'll leave our children somewhere else). Check any given topic, including this one. Bet that's going so well!

    Instead, this is the result of an ever more fast moving world. Once you let something slide, it tends to pick up speed. And only grows larger and more complex. It has been the same with computing. Once you have the prerequisites of effortless manufacturing, high-level languages and metric tons of libraries, they will be used as building blocks for increasingly more complex things. That's not only how it works, but how accumulation of knowledge and division of labor is supposed to work.

    Unless one or more building blocks are shit, built from shit, etc.; and many are. But why they are? Because computer science is fucking rocket science squared. While walking a rope. While also playing chess against a grandmaster and a twelve-string banjo in between the moves. And pigeons shitting on you all the way.

    Odds are you're not very good at that. Or if you are, there's probably some part of it that's still giving you a pause. And if you think there isn't, you're an arrogant fuck and a liar.

    There is no other field so complex and problems so difficult as in software engineering. The worst programmers had better remain pure mathematicians. Says enough about those who aren't even mathematicians.

    And what does the world do in any given situation where the scale of problems exceeds the talent available? Fake it until you make it. So there's a bunch of disposable furries crawling that rope strapped with Uzis and not giving pigeon shit about the chess part, and all banjos were sold as firewood long ago, because costs.

    The ambition of society to apply these wonderful pieces of equipment has grown in proportion and the poor programmer, with his duties in this field of tension between equipment and goals, finds his task exploded in size, scope and sophistication. And the poor programmer just has not caught up. Looking backwards we must conclude that the difficulty of the tasks ahead have been grossly underestimated in the past. Extrapolations concerning the number and power of computers to be installed have been made, but society's preparation for this oncoming wave of machinery has been the call for more and more programmers, rather than for more capable ones, who derive their greater capability from a better understanding of the nature of the programming task.

    It is alarming to see how little the average programmer's attitude towards his work has changed. The reason is twofold: many programmers have been attracted towards the profession a long time ago, and among them many did not have the intellectual growth potential needed to keep up with the changing profession."

    In short, I suggest that the programmer should continue to understand what he is doing, that his growing product remains firmly within his intellectual grip. It is my sad experience that this suggestion is repulsive to the average experienced programmer...

    - "On reliability of programs", E. W. Dijkstra

    The problem is in fact arrogance borne of ignorance of our limits. We've lost grip on things. We've fucking lost it. And as individuals foremost concerned about our own short-term comfort and not having quite figured out sharing vast amounts of knowledge efficiently, we're not likely to regain it.


    That said (or left unsaid, if you didn't read it), arguing that the world is fucked (as a whole or in any particular way, such as software) has been the humanity's oldest pastime (except for war, perhaps), and we're somehow still here doing better than ever. We're resilient that way. And therefore there's nothing that can be done about that. Stop worrying and...

    Filed under: Install Dawn


  • Banned

    @blakeyrat said in Software disenchantment:

    You don't need any of that shit to start an Access app, which isn't to say Access it perfect because you do need to know the fundamentals of storing tabular data.

    This sentence strongly implies that the perfect development software should enable users to develop software without any knowledge about anything whatsoever. Do you really think that?



  • @boomzilla said in Software disenchantment:

    Do you honestly believe that I believe that? I barely know what "WinForms" is. I've never written anything with either, to my knowledge. That's besides the point. This "WinForms" nonsense is just you putting up red herrings and missing the entire point.

    The point is I don't understand how you're associating Electron apps with my belief that "non-elite" people should be able to write software. (Which is phrased misleadingly anyway; the tools the people use should teach them as they use it so they become elite in a few months anyway).

    Electron apps are like the opposite of what I'm rooting for.



  • @Gąska Yes, with the proviso that you're defining "should" as "should" and not something like "will be".

    I also believe there SHOULD be no wars in the world, that nobody SHOULD go without healthcare, etc.

    This is where some idiot who doesn't understand the concept of an ideal comes into the thread waving their arms like Kermit the Frog greeting Kenny Rogers and says, "BUT THAT'S UNPOSSIBLE! THAT WILL NEVER HAPPEN!" and then we have to get into the long discussion about the definition of words like "should" and "ideally".


  • ♿ (Parody)

    @Applied-Mediocrity said in Software disenchantment:

    Odds are you're not very good at that. Or if you are, there's probably some part of it that's still giving you a pause. And if you think there isn't, you're an arrogant fuck and a liar.

    And you've never looked at code that you wrote more than a month ago.


  • ♿ (Parody)

    @blakeyrat said in Software disenchantment:

    @boomzilla said in Software disenchantment:

    Do you honestly believe that I believe that? I barely know what "WinForms" is. I've never written anything with either, to my knowledge. That's besides the point. This "WinForms" nonsense is just you putting up red herrings and missing the entire point.

    The point is I don't understand how you're associating Electron apps with my belief that "non-elite" people should be able to write software. (Which is phrased misleadingly anyway; the tools the people use should teach them as they use it so they become elite in a few months anyway).

    Electron apps are like the opposite of what I'm rooting for.

    You'd think so, but no. Because having Electron available as a platform means that you've gone from having to write something that lives on its own and has to deal with whatever toolkit you're using to effectively living inside a web browser. It's more familiar and easier for people to get up and started originally. Every browser comes with a javascript REPL environment and you can look at how the widgets get put together for any webpage out there.

    So while it may not have simplified to the extent of MS Access, it's lowered the bar a lot.



  • @boomzilla We'll just have to agree to disagree on that. Having to use HTML and CSS to lay out a UI is nightmarish compared to pretty much all other ways of doing it. And that's not even considering the shittier tooling, etc.


  • Banned

    @blakeyrat said in Software disenchantment:

    @Gąska Yes, with the proviso that you're defining "should" as "should" and not something like "will be".

    I also believe there SHOULD be no wars in the world, that nobody SHOULD go without healthcare, etc.

    Oh, great, semantic nitpicking. So let me ask you differently: do you believe that the defining characteristic of "perfect development software" is enabling people without any knowledge about anything whatsoever to create working software? If so, do you believe it should be goal of every programming tools developer to strive for "perfect development software" as defined above?


  • kills Dumbledore

    @Gąska said in Software disenchantment:

    Oh, great, semantic nitpicking. So let me ask you differently: do you believe that the defining characteristic of "perfect development software" is enabling people without any knowledge about anything whatsoever to create software?

    You need knowledge of the problem domain you're writing software to solve. Any required knowledge of "programming" on top of that is extra cognitive load that stops people from being able to just solve the problem at hand


  • Banned

    @Jaloopa the problem domain for software development software is software development. So the knowledge of problem domain consists of knowledge of software development. You have to have knowledge of software development if you want to develop software. There's no way around it.

    I'm all for easy to use software. But making software development easy can only get us so far. To be really accessible to average user, we need purpose-built software for the specific problem domain of a given user. Because most problem domains are orders of magnitude simpler than software development.


Log in to reply