Earlier quoted context omitted.
> The problem with programming is not the syntax and other particularities, but inherent complexity of explaining the task to a computer. Not really. A great deal of the the complexity is accidental, not inherent. Take the example from the post of adding up some numbers in a table. The inherent complexity is very low, the complexity comes from all the stuff not inherent to the problem itself.
Real world is always complex, ambigous and changing. So any simple model will in time be found inadequate, and complex models unusable. The problem of programming isn't so much the interface. Text has been used for decades and remains a robust communication platform among humans. The real problem is defining the problem to be solved, its scope and adaptability to a complex and changing world. The difficulty is the ga…
Programs are a prison: Rethinking the building blocks of computing interfaces
31–40 of 195 posts
Re: Programs are a prison: Rethinking the building blocks of computing interfaces
#32>Inherent, ubiquitous programmability: Currently, "doing programming" is a segregated activity from mainstream computing - separate software, command lines, specialist knowledge, clunky text-driven interfaces. This must end. Real expressiveness demands that every entity in the interface is inherently programmable - a table of data shouldn't just be a rendered picture of a table of data - it should be a table. Program…
Re: Programs are a prison: Rethinking the building blocks of computing interfaces
#33Earlier quoted context omitted.
Real world is always complex, ambigous and changing. So any simple model will in time be found inadequate, and complex models unusable. The problem of programming isn't so much the interface. Text has been used for decades and remains a robust communication platform among humans. The real problem is defining the problem to be solved, its scope and adaptability to a complex and changing world. The difficulty is the ga…
What's vague and hard to define about adding up some numbers in a table?
Re: Programs are a prison: Rethinking the building blocks of computing interfaces
#34Why do articles like this keep being written and upvoted? It just keeps raising problems ranging from design, technology, politics and economy. Perhaps the author should try to answer his own questions as an exercise.
Re: Programs are a prison: Rethinking the building blocks of computing interfaces
#35Earlier quoted context omitted.
Real world is always complex, ambigous and changing. So any simple model will in time be found inadequate, and complex models unusable. The problem of programming isn't so much the interface. Text has been used for decades and remains a robust communication platform among humans. The real problem is defining the problem to be solved, its scope and adaptability to a complex and changing world. The difficulty is the ga…
What's vague and hard to define about adding up some numbers in a table?
Re: Programs are a prison: Rethinking the building blocks of computing interfaces
#36Earlier quoted context omitted.
Real world is always complex, ambigous and changing. So any simple model will in time be found inadequate, and complex models unusable. The problem of programming isn't so much the interface. Text has been used for decades and remains a robust communication platform among humans. The real problem is defining the problem to be solved, its scope and adaptability to a complex and changing world. The difficulty is the ga…
What's vague and hard to define about adding up some numbers in a table?
Quickly you have to consider different kinds of numeral systems, bases, decimal separators (which may be locale dependant), precision, units, the difference in adding time (or dates), or money in different currencies (with and without different kind of taxes), etc, etc, etc.
Sure most of the times you can abstract yourself from all this, use sensible defaults, whatever, but that complexity is still there and sooner or later it will get you, even if you try to hide it under the rug...
Re: Programs are a prison: Rethinking the building blocks of computing interfaces
#37I call this idea If you can see it you can use it and right click use. So if you see a filename on the CLI, you can right click on the file name and interact with the file with a GUI. Or you could hover over a tag in the browser of some dot syntax or table and right click and click Use. It would run various heuristics over the data to work out what the data is and then import it to the right program.
Like the Acme or Wily editors?
Re: Programs are a prison: Rethinking the building blocks of computing interfaces
#38Sounds like unix to me.
Re: Programs are a prison: Rethinking the building blocks of computing interfaces
#39Earlier quoted context omitted.
What's vague and hard to define about adding up some numbers in a table?
Adding the numbers is not the problem, the problem is what the numbers represent, where do they come from (if they come from only one place...) where and for what are they needed. Quickly you have to consider different kinds of numeral systems, bases, decimal separators (which may be locale dependant), precision, units, the difference in adding time (or dates), or money in different currencies (with and without diffe…
The complexity and misunderstandings also creep into system design itself. Seems many are eternally astounded that transactional data is "duplicate data" stored separately from the "same data", etc. Many of these complexities are non-obvious and unintuitive, until you are forced to think it through step by step yourself. Agile is simply the concession that the complexity cannot always be handled up-front, but that solutions must be developed to be adaptable to new observations and realizations.
Re: Programs are a prison: Rethinking the building blocks of computing interfaces
#40>Inherent, ubiquitous programmability: Currently, "doing programming" is a segregated activity from mainstream computing - separate software, command lines, specialist knowledge, clunky text-driven interfaces. This must end. Real expressiveness demands that every entity in the interface is inherently programmable - a table of data shouldn't just be a rendered picture of a table of data - it should be a table. Program…