Simple is as simple does (JEP draft 8323335)

Stephen Colebourne scolebourne at joda.org
Wed Feb 21 08:45:51 UTC 2024


I do agree that "Simple" isn't the best prefix here, and "Basic" is a
bit better,

But I personally prefer SystemIO, as it
(a) links the concept to the existing System class, which they will
likely see or have seen by Googling
(b) introduces the concept of the "system" that the code is running on

ie. I think "System" is a better on-ramp name as it actually leads to
the "real thing"

Yours bikeshedderly,
Stephen


On Tue, 20 Feb 2024 at 21:01, Brian Goetz <brian.goetz at oracle.com> wrote:
>
> I was all ready to dismiss this as just bikeshedding, but your clever up-front disclaimer convinced me to hang with you :)
>
> I think what you are saying here is that we've set a trap for ourselves by claiming the word "simple", which, as we've seen, is subject to "everyone interprets it in a way to support their own preference."  Fair point; naming matters, especially when setting direction.
>
> I am not as optimistic as you that if we called this "BasicIO", whether we wouldn't get the same arguments, but your point is taken: the goal here is not simplicity, it is about putting in place some very basic IO primitives which can be built upon, which do not depend on either other library abstractions (Scanner, Console, StringTokenizer), which are reasonably symmetric with respect to input and output, and which do not require explanation of static fields in order to use for the first time.
>
> These characteristics serve both students and "scripts", in that they address the most basic console IO needs without ancillary abstractions.
>
>
>
> On 2/20/2024 12:39 PM, Eirik Bjørsnøs wrote:
>
> Hi,
>
> I acknowledge the following is easy to dismiss as just bikeshedding, but please hang with me:
>
> Is labeling something as "simple" an effective naming practice, especially in a pedagogical context like we are faced with in this JEP?
>
>> simple: adjective
>> 1. easily understood or done; presenting no difficulty.
>> "a simple solution"
>
>
> First, let me be bold and claim that nothing in programming is "easily understood or done; presenting no difficulty". Anyone claiming so has clearly lost empathy with the beginning learner! ;-)
>
> Second, the lable "simple" suggest something about the things not fitting into the "simple" bucket. If not simple, what are those things? Difficult?
>
> Third, "easily understood" very much depends on who is trying to understand. It may change over time as the learner gains understanding and experience. Simple to Alice might not be simple to Bob.
>
> ...
>
> As any complainer, I'm also too lazy to do the work to find a better alternative. But perhaps "basic" could be a starting point:
>
>> basic: adjective
>> 1. forming an essential foundation or starting point; fundamental.
>
>
> This seems more stable to time, context and experience. Something fundamental can be trusted to stay fundamental for a while.
>
> Thanks (any sorry!),
> Eirik.
>
>
>


More information about the amber-dev mailing list