What people really need to be educated on is "Why computers are not and never will be trustworthy". And they don't need the details of why, just the bottom line.
What's wrong with Software nowadays and how we can fix it
31–40 of 147 posts
Re: What's wrong with Software nowadays and how we can fix it
#32> Just as knowing why apples fall down and aeroplanes fly up, the citizens of the 21st century need to know that computers are not magical boxes but composed of dynamic models. I'm not sure most of the public could explain why gravity works, or how an airplane actually gets in the sky. This is because most people are not inquisitive by nature, they generally take things at face value without questioning why. This kin…
I am curious by nature and like learning new things and figuring out how things work, and it has been like that since I was a kid. My brother is the exact oposite to me, yet we both had the same upbringings (we differ just three years).
When he studied the sciences, it was just pass highschool degree, and after that he went into the social field as a caretaker for special-needs children. I doubt he would benefit a great deal in his day to day life from knowing why apples fall down or planes fly up.
Whilst I like the idea of encouraging a generation of thinkers and tinkerers, I accept that it just isn't for everyone, and neither should it be. Maybe it's just not in their nature.
Re: What's wrong with Software nowadays and how we can fix it
#33At first glance, it seemed like yet another silicon-valley-neoliberlist-style lots of words and ideologies, but no code and practicalities. But it seems like OPs thesis has a more hands-on approach: http://zells.org/res/Zells_DiplomaThesis.pdf
- It seems some kind of language/computation-model. Loosely based on a "everything is an actor" model.
- It did look goodish. I tried following the Fibonacci example, which sort of made sense (I got the impression that recursion is handled by creating new nodes/zells). The discussion chapter also seemed interesting.
- It has that abstruse academic feel, where sometimes it is hard to assess whether the problem is my ignorance, or just vagueness of the publication.
- Motivation sections usually have an exaggerated tone to them (i.e. this will totally change everything), but this one, and the article above, are a bit over the top.
- There are also some over-the-top statements sprinkled throughout the thesis (e.g. "a model of virtual objects which exist independent of any hardware").
Re: What's wrong with Software nowadays and how we can fix it
#34Earlier quoted context omitted.
> When I drive my car, I just want to get from point A to point B while listening to a podcast. I don't care to know how they work. Yet, you've spent months explicitly training for that task.
people don't spend more that a few minutes learning the interface of a car, everything else is learning how not to die or kill other people with it.
Re: What's wrong with Software nowadays and how we can fix it
#35Re: What's wrong with Software nowadays and how we can fix it
#36I usually try hard not to be cynical, but in this case I can't stop myself. This seems to be another attempt at a grand, unified packaging and IPC / linking method. There have been hundreds of these, and there is no attempt at all to discuss where all the others went wrong, and how this will improve upon them.
Re: What's wrong with Software nowadays and how we can fix it
#37>To fix this, we need to increase the currently tiny number of people who are able to write, modify, combine and share software. We need a tool that makes writing software easy and fun, and accessible to everyone. A tool that enables software literacy. Global access to niche knowledge doesn't seem like an effective use of the world's time to me. Let's look at this same idea, but replace "develop software" with "perfo…
The difference is most people won't need brain surgery in their lifetime. A more relevant comparison would be car maintenance.
Re: What's wrong with Software nowadays and how we can fix it
#38>To fix this, we need to increase the currently tiny number of people who are able to write, modify, combine and share software. We need a tool that makes writing software easy and fun, and accessible to everyone. A tool that enables software literacy. Global access to niche knowledge doesn't seem like an effective use of the world's time to me. Let's look at this same idea, but replace "develop software" with "perfo…
I personally experience a huge overlap between ordering my thoughts for writing and making a mental model of a problem and its programmatic solution. Yet it's easier for most people to pick up a pen or open a word processor and express themselves than it is to write a working program.
Why should it be so? Apart from implementation details of hardware platforms and runtimes, you're really talking about expression in different units: subroutines rather than paragraphs, APIs rather than outlines, user stories rather than theses.
To bring it back to your analogy, consider what a tool that lowered the barrier to entry to brain surgery might do. It might certainly do things like list the particular skills, tools, and medications required to perform certain procedures. It might provide a check list of crucial steps and a sort of troubleshooting tool. It isn't going to make an expert out of an unskilled user, and a particularly skillful surgeon might not benefit from the tool at all, but on balance, it would raise the baseline competency of many users and help ensure that certain critical requirements were met.
A good assisted programming tool would do the same. It would help the user accurately model the problem, it would advise the user of certain best practices, and it would certainly warn the user of common mistakes. This is all very much in line with a good word processor, with features like spellcheck and document templates.
So I disagree that programming is analogous to brain surgery. Programming itself is a tool for the expression of an idea and much more akin to composition, and there is no good argument in my opinion against tools to assist with either. Remember that for a large part of our history, literacy was considered a niche skill, and widespread literacy led to explosive growth of our knowledge of the world. I'm not one of those "literally everyone should learn to code" types, but there is quite a lot of potential in spreading programming literacy, even if you feel most people have no business practicing it.
Re: What's wrong with Software nowadays and how we can fix it
#39I usually try hard not to be cynical, but in this case I can't stop myself. This seems to be another attempt at a grand, unified packaging and IPC / linking method. There have been hundreds of these, and there is no attempt at all to discuss where all the others went wrong, and how this will improve upon them.
Can someone name a couple of those hundreds of attempts?
Self-describing components in .NET
Visual Basic 6's component method.
Windows has had various of these, including ODE and COM.
Obviously, any linux distribution, and plain old C linking, probably comes closest (although that tends not to be self-describing.
Lots of RPC systems I would say fall into this list, just google for "self-describing RPC" to find a bunch of versions.