[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Sheflug] Why is Software Fat?



Pure hyperbole.

> The world of software has become more fractured

There is more choice.

> more complex

More complex problems are being tackled.

> and less easy to implement.

Ridiculous. As a counter-example, I implemented a Physics simulation
project at University in 1 line of Python in about 20 minutes. The
project supervisor accepted the solution, but was expecting it to take a
whole term. Why? He teaches a Programming in C course, so every previous
student had used C.

I compared my NumPy-based implementation to one in FORTRAN; the only
speed difference was Python's constant startup time.

> Computer science has become an abject failure in terms of software
> development and design.

This is an incredibly broad statement, so it's open to all kinds of
refutations. How about, Physics isn't deemed a failure when a bridge
collapses?

> The internet now has a software industry that is based upon no
> software design methodology.

Software design methodologies are all over the place. Object-oriented,
waterfall, agile, xp, test-driven, behaviour-driven, aspect-oriented,
purely functional, message-passing, model/view/controller, design
patterns, and so on. Now, it could be argued that they're all terrible,
but to say there's NO software design methodology is a No True Scotsman
fallacy.

> Most web developers follow no design approach and hence the internet
> is mushrooming the amount of rubbish that is being presented.

Also literature is dead because Twiter, live music is dead because
phonograph and fine dining is dead because McDonalds.

> Software is not an engineering concept and the academic teaching
> community is quite simply not competent to teach the discipline.

Depends on the definition of 'the discipline'....

> There are exceptions to the rule. Gaming is one area where a purist
> approach remain.

Ah, now we discover what all of the vague accusations are about! It's
the classic "real programming" flame bait http://xkcd.com/378/

> Financial services is a good example of vast resources being spent to
> produce rubbish.

It's also a good example of heavy investment in basic Computer Science
research. A few counter-examples:

http://research.microsoft.com/en-us/um/people/simonpj/Papers/financial-contracts/contracts-icfp.htm
http://lambda-the-ultimate.org/node/3331
https://ocaml.janestreet.com/?q=node/109
http://idontgetoutmuch.wordpress.com/2013/02/10/parallelising-path-dependent-options-in-haskell-2/

> This talk is supposed to be controvertial as it is meant to wake us up 
> from the complacency of accepting bad software in our lives.

Most software is terrible, anyone who says otherwise is deluded. How is
this controversial? Does the speaker have an actual plan to tackle this?
Perhaps through formal verification and machine learning (my own
approach)? Psycho/social studies of software development (for example
http://www.ppig.org/
http://developers.slashdot.org/story/11/10/27/213231/is-perl-better-than-a-randomly-generated-programming-language
)? Analysis of existing software artifacts
(eg. http://en.wikipedia.org/wiki/Software_archaeology )? Ground-up
reimplementation ( http://vpri.org/html/writings.php
http://www.crash-safe.org/ )?

Cheers,
Chris

_______________________________________________
Sheffield Linux User's Group
http://sheflug.org.uk/mailman/listinfo/sheflug_sheflug.org.uk
FAQ at: http://www.sheflug.org.uk/mailfaq.html

GNU - The Choice of a Complete Generation