Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?

Comment: Re:Nothing (Score 1) 430

by rp (#47606983) Attached to: Ask Slashdot: What To Do About the Sorry State of FOSS Documentation?

Never attribute to malice what is adequately explained by ignorance.

Paradoxically, the ignorance in this case is a result of the opposite: too much knowledge!

Programmers tend to think in code. Many have never had the need to think about the problem they're creating code to solve in any other way than in terms of code. To inexperienced programmers, code may be the *only* way they have encountered to think about software. Consequently, they may have a lot of trouble envisaging other ways to talk about what the software does, how it does it, or why it does it; let alone imagining how such other ways could be useful.

That is tunnel vision, but not necessarily anal retentiveness - it may simply be a result of lack of exposure to situations in which the level of detail that code provides is more of a hindrance than an advantage, such as teaching other people how to use the software.

Comment: Re:Power. (Score 1) 876

by rp (#46227257) Attached to: Ask Slashdot: Why Are We Still Writing Text-Based Code?

I think there is an important distinction here.

Circuits and GUIs are graphical by themselves. To specify them graphically is to specify them in their own terms. Such graphical representations are natural and compact. They are not really abstractions. (For circuits, their behavior can be added to the graphics using a minimal set of graphical conventions. For GUIs, this is not possible; hence, the behavior of GUIS isn't usually specified in a graphical way.)

Most things in programming are not graphical. C functions aren't. Algorithms aren't. Data structures aren't. Databases aren't. Contracts on what a function may or may not do aren't. Communication protocols aren't. Etc.

Graphical languages can be used as an aid in explaining or specifying these things, but the results will be symbolic representations, just like textual representations are. This is a fundamentally different way of using graphics.

Such symbolic graphical languages certainly have their use (UML diagrams, database model diagrams, state machines, etc.) but they take up a lot more space than equivalent textual representations. Take natural numbers, for instance. It's perfectly OK to replace them with a graphical representation (dots and circles on a screen) when introducing them, but only a textual representation such as the decimal representation will scale to larger sizes. This holds for pretty much all aspects of programming. For instance, when specifying program flow logic, a flowchart is a very space-inefficient way to do so when compared to textual code. It also takes much more time to create. There is no way to specify the equivalent of 10 million lines of code in less than 1 million pages of flowcharts, and they would cover only the control flow, not all other things that the code specifies. Therefore, graphics will only be used for those aspects of a program that are easy to visualize, and usually, only as a secondary representation, next to a textual one. Text is a lot more compact and usable.

Comment: Re:Not quite true in either case ... (Score 1) 716

by rp (#46227109) Attached to: Ask Slashdot: Should Developers Fix Bugs They Cause On Their Own Time?

There is no such thing as 'on your own time' when you're doing work for a company: they are responsible for the results and the working conditions (proper payment, working environment, insurance, supervision, etc.) Not living up to those responsibilities is illegal. The company can ask you whether you're willing to put in more hours at the same salary, and if you agree, that arrangement may be legal. They cannot ask you to do work 'on your own time'.

Comment: Re:Facebook gets *some* info from me... (Score 1) 293

by rp (#46098513) Attached to: Why Does Facebook Need To Read My Text Messages?

But it's limited, because I uninstalled their app from my phone the moment they wanted a list of the running apps on my device. I still interact with FB, but using a separate browser app that only talks to FB. With location turned off.

I tried to to that, but the smartphone says the Facebook app is a standard app and cannot be uninstalled.

Comment: Re:Computer Science = Algorithm Development (Score 1) 564

by rp (#34635624) Attached to: Do High Schools Know What 'Computer Science' Is?

I too believe it's partly due to the asinine name. The department I work for used to call it Computing Sience (which makes a lot more sense) but changed it to Computer Sience a while back. All this while we do have a different department that is in fact involved in the science of computer hardware: Electrical Engineering. Next thing you know they rename geometry to Earth Science.

The price one pays for pursuing any profession, or calling, is an intimate knowledge of its ugly side. -- James Baldwin