On Thu, 31 Jan 2019 at 17:59, Zach van Rijn <me_AT_zv.io> wrote:
> On Thu, 2019-01-31 at 09:49 -0800, Anselm Garbe wrote:
> > > > Our philosophy is about keeping things simple, minimal and
> > > > ...
> >
> > This is still totally accurate for the software industry, even
> > more accurate than we could imagine 13 years ago when those
> > lines were written.
>
> I was pointing out the disparity between your (collective)
> desire for quality software, while you simultaneously neglect
> the quality of your community's forums with over-simplified
> technical discussion and the shutting down of dissenting voices.
Not sure what you actually mean. As said we tend to value code higher
than some academic deep dive discourse about some programming language
theories. By this we might express our (high level) opinion in a more
placative fashion than researchers would do. I personally think much
of software development is actually an art or a craft, so it is ok to
a certain degree to focus on taste rather than strong data driven
judgement in all the aspects. Being good or right about things not
only requires lot's of experience, but also a good portion of
intuition. And the latter is barely elusive by scientific methods.
> I agree that time is a valuable resource, though I've found that
> spending a even a /little/ bit of time thinking about one's code
> prior to sitting and writing it, results in a better outcome.
I agree to this and there is no contradiction here. We did spend more
time on the code here, than the average project does, just because we
carefully think about the essence of things. Besides thinking before
you start writing code, there have also methods developed that lead to
better software. One is attempting by introducing a feature to remove
another or two. This leads towards the essence.
> To support your point, wouldn't it make more sense to adhere to
> your own software principles during discussion by preemptively
> resolving as much ambiguity in your statements as possible?
It depends. When we talk about opinion or taste it is acceptable if
there is a certain ambiguity. If discussing an idea in detail or in
code of course there shouldn't.
> Discussions would be more productive and have fewer lines.
That may or may not be the case as this thread has already proven.
> > understand what went totally wrong. Mixing data structures
> > with behaviour is one of the worst ideas that progammers came
> > up with and has led to almost unmaintainable code and data
> > structures. In Java world 'refactoring' is daily business
> > because of this. I can't go into more detail as this would be
> > a big waste of time. If you want to learn more about it, I
> > suggest to start here:
> > http://harmful.cat-v.org/software/OO_programming/
>
> In <any serious programming> world, refactoring is an essential
> component of code maintenance. It doesn't have to be as drastic
> as you might imagine, but to believe that code doesn't ever need
> to be changed is irresponsible.
Well, you seem to misconceive what I wrote. I did not criticize
refactoring, I criticized the excessive need for it in the Java world.
If data structures and logic are strictly decoupled and not
intermingled, refactoring of the logic is very easy and
straightforward. This is particularly true for PLs like C where it is
uncommon practice to intermingle data and logic. However in a OO world
like Java, it is prevalent and the refactoring becomes a burden
because of this.
Best regards,
Anselm
Received on Fri Feb 01 2019 - 04:58:52 CET