• xyzzy

    xyzzy

    5 months ago
    In many aspects visual programming, hygienic macros, adts from functional programming are already hitting mainstream popularity with things like Unity and Rust becoming so popular. I view blockchain, quantum and AI as storage / db improvements rather than programming improvements fundamentally and they have their place. I think the next interesting wave of programming is going to be around improving the tools around programming like voice based programming, programming with the help of mobile phones and VR based programming IDEs. Thoughts ?
    xyzzy
    1 replies
    Copy to Clipboard
  • s

    Steve Dekorte

    5 months ago
    For your FoC work, which missing frameworks/platforms/features/tools (that are not specific to the project) do you feel would most help you implement your project? (for example, have you had to take any significant detours from working on your project specific code to build such missing pieces?)
    s
    Kartik Agaram
    +6
    13 replies
    Copy to Clipboard
  • w

    wtaysom

    5 months ago
    Straw poll... As a rule, which is more challenging in the software systems you work on: • 🤯 Changing an algorithm. (Example: Need to switch to recursion because nested loops aren't going to cut it anymore.) • 😭 Changing the data model. (Example: A user should be able to register more than one email address.) • 😮 Some other change is my main source of stress. (Example: It always takes an unreasonable amount futzing to convince the linker to use the updated version of a library.)
    w
    i
    +3
    6 replies
    Copy to Clipboard
  • p

    Personal Dynamic Media

    5 months ago
    I've been pondering how to define a metric for how programmable a user's overall environment is. One thought I've had is to add up, for each application used in an average day, the percent of time it is used times the percent of features that can be programmed. Call it something like Overall Average Programmability. I know this doesn't account for differences in how easy it is to use the programmability of a given app (mailx is much easier to automate than Gmail) or the importance of individual features that can or cannot be automated, or the ease of integrating applications with different built-in scripting languages, but I think this is a relatively well-defined metric that might still contain some meaning. Does this sound like a meaningful and/or useful concept? Would you estimate, over the course of your career, that your environment's Overall Average Programmability has trended upwards or downwards? Any thoughts on the forces that may have impacted the trends? Personally, I think mine has trended downwards, and I suspect it has something to do with the increasing roles played in my life by mobile apps, web apps, and services that make their money from advertising and want to maximize user engagement rather than productivity. Thoughts?
    p
    Chris Knott
    +2
    13 replies
    Copy to Clipboard
  • Gregor

    Gregor

    5 months ago
    I vaguely remember seeing a tool for visualizing data flows between systems, e.g. you'd describe a queue with multiple consumers and would describe what e.g. fan-out does and then you can trigger that action, seeing how data travels along the queue vertices to its consumers. Anyone know what I'm talking about or sth in that direction?
    Gregor
    1 replies
    Copy to Clipboard
  • Mariano Guerra

    Mariano Guerra

    5 months ago
    📋 How Visual is Your Language? Semantic Mutation Testing How many "box and arrow" languages are just scratch with arrows between the blocks? https://instadeq.com/blog/posts/how-visual-is-your-language-semantic-mutation-testing/
    Mariano Guerra
    j
    +2
    15 replies
    Copy to Clipboard
  • p

    Personal Dynamic Media

    4 months ago
    We used to dream of programmable agents that could pursue our interests online with a minimum of direction. For example,

    https://youtu.be/umJsITGzXd0

    Online environments like LPmuds and MOOs allowed multiple separate people to create pieces of code that interacted with each other to create a more interesting world for the participating humans. And yet, nowadays we deploy CAPTCHAs to prevent automation, services place strict limitations on how apis may be used, and the word "bot" is almost always derogatory, often preceded by the word "spam." How can we create shared spaces that support automation in order to empower humans, but resist spamming, phishing, and other abuse?
    p
    Kartik Agaram
    +1
    4 replies
    Copy to Clipboard
  • Kartik Agaram

    Kartik Agaram

    4 months ago
    I've been rereading https://www.bloomberg.com/graphics/2015-paul-ford-what-is-code during my latest bout of introspection. It annoyed me out of all proportion when I first read it (even though I could and still can appreciate the craft that went into it), and with the benefit of hindsight (and having joined this forum 3 years later) I think I understand why: it's unabashedly about the present of software, and by nature that endeavor makes a virtue to newcomers out of how things work today. On the other hand, I argued the opposite direction over at https://futureofcoding.slack.com/archives/C5T9GPWFL/p1645838782428059?thread_ts=1645811249.437739. So it seems to matter how vehemently I feel about the thing being taught to newcomers, whether I consider it important or irrelevant frippery.
  • j

    Jason Morris

    4 months ago
    Parsers generators allow you to write code that creates trees (usually), from a string of characters. So a way of creating a sort of abstractly 2D thing from a 1D representation. Is there an equivalent tool for generating representations from symbols arranged in 2D? A node-and-arrow parser generator, for example? Something in the graph database world?
    j
    Mariano Guerra
    +2
    8 replies
    Copy to Clipboard
  • Mariano Guerra

    Mariano Guerra

    4 months ago
    The MAYA Principle Loewy’s secret was essential to design for the future – but delivering the future gradually. He designed his famous logos, some of the most recognizable cars of the 40s, 50s, and 60s, refrigerators, and locomotives for his users’ present needs and skills while pushing the boundaries of design and technology beyond his users’ expectations. He called this approach the MAYA principle. Maya is an abbreviation for “*Most Advanced. Yet Acceptable.*” which means that Loewy sought to give his users the most advanced design, but not more advanced than what they were able to accept and embrace. Loewy believed that:
    "The adult public's taste is not necessarily ready to accept the logical solutions to their requirements if the solution implies too vast a departure from what they have been conditioned into accepting as the norm."
    Mariano Guerra
    1 replies
    Copy to Clipboard