Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #24417 > unrolled thread

About java program.

Started byrajbhaumik@gmail.com
First post2013-06-15 13:38 -0700
Last post2013-06-18 04:06 -0400
Articles 20 on this page of 103 — 16 participants

Back to article view | Back to comp.lang.java.programmer


Contents

  About java program. rajbhaumik@gmail.com - 2013-06-15 13:38 -0700
    Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-06-15 16:50 -0400
    Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-06-16 01:12 +0200
      Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-16 14:21 +0100
        Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-06-16 17:28 +0200
          Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-16 19:52 +0100
            Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-06-16 15:50 -0400
          Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-17 09:36 +0100
          Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-17 09:49 -0300
            Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-17 14:46 +0100
              Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-17 13:32 -0300
              Re: About java program. Joerg Meier <joergmmeier@arcor.de> - 2013-06-17 20:32 +0200
                Re: About java program. Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-06-17 14:49 -0400
                  Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-17 18:38 -0300
                    Re: About java program. Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-06-17 18:30 -0400
                      Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-18 17:33 -0300
                    Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-07-04 22:56 -0400
                  Re: About java program. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2013-06-18 00:13 +0200
                    Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-18 17:50 -0300
                      Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-19 08:50 +0100
                        Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-19 15:16 -0300
                          Re: About java program. Lew <lewbloch@gmail.com> - 2013-06-19 16:20 -0700
                            Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-07 13:31 -0400
                              Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-07 18:16 -0400
                              Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-07 19:21 -0400
                                Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-07 20:07 -0400
                                  Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-07 20:21 -0400
                                    Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-07 20:40 -0400
                                  Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-07 22:20 -0400
                                    Re: About java program. Lew <lewbloch@gmail.com> - 2013-07-07 21:47 -0700
                                      Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-08 06:58 -0400
                                        Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-08 08:07 -0400
                                          Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-08 08:58 -0400
                                            Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-08 09:18 -0400
                                              Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-08 09:47 -0400
                                                Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-07-08 10:07 -0400
                      Re: About java program. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2013-06-19 16:42 +0200
                        Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-20 23:33 -0300
                          Re: About java program. Martin Gregorie <martin@address-in-sig.invalid> - 2013-06-21 04:16 +0000
                            Re: About java program. Joerg Meier <joergmmeier@arcor.de> - 2013-06-21 12:27 +0200
                              Re: About java program. Martin Gregorie <martin@address-in-sig.invalid> - 2013-06-21 21:14 +0000
                                Re: About java program. Joerg Meier <joergmmeier@arcor.de> - 2013-06-21 23:37 +0200
                                  Re: About java program. Martin Gregorie <martin@address-in-sig.invalid> - 2013-06-21 23:42 +0000
                                Re: About java program. Gene Wirchenko <genew@telus.net> - 2013-06-24 13:00 -0700
                                  Re: About java program. Martin Gregorie <martin@address-in-sig.invalid> - 2013-06-24 21:29 +0000
                                    Re: About java program. Martin Gregorie <martin@address-in-sig.invalid> - 2013-06-24 21:42 +0000
                            Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-21 23:59 -0300
                              Re: About java program. Martin Gregorie <martin@address-in-sig.invalid> - 2013-06-22 13:30 +0000
                          Re: About java program. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2013-06-21 16:24 +0200
                            Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-21 22:39 -0300
                              Re: About java program. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2013-06-22 19:25 +0200
                                Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-22 19:41 +0100
                                  Re: About java program. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2013-06-23 03:53 +0200
                                    Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-23 09:21 +0100
                                      Re: About java program. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2013-06-24 18:57 +0200
                                        Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-24 18:14 +0100
                            Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-22 09:03 +0100
                              Re: About java program. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2013-06-22 19:26 +0200
                                Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-22 18:51 +0100
                      Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-07-04 22:58 -0400
                  Re: About java program. Joerg Meier <joergmmeier@arcor.de> - 2013-06-19 00:38 +0200
                    Re: About java program. Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-06-18 18:56 -0400
                      Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-18 21:26 -0300
                        Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-06-19 21:20 +0200
                          Re: About java program. Sven Köhler <remove-sven.koehler@gmail.com> - 2013-06-20 11:23 +0300
                            Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-06-20 19:18 +0200
                              Re: About java program. blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2013-07-15 20:20 +0000
                      Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-19 09:14 +0100
                    Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-19 09:11 +0100
                      Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-07-04 23:11 -0400
                        Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-07-05 09:13 +0100
                          Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-07-05 23:15 +0200
                            Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-07-05 22:03 -0400
                              Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-07-06 13:01 +0200
                                Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-07-06 13:43 +0100
                                Re: About java program. Martin Gregorie <martin@address-in-sig.invalid> - 2013-07-06 14:17 +0000
                                Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-07-06 16:18 -0400
                                  Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-07-06 21:42 +0100
                            Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-07-06 09:16 +0100
                              Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-07-06 13:14 +0200
                                Re: About java program. Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-07-06 08:22 -0400
                                  Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-07-07 20:43 +0200
                                    Re: About java program. Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-07-07 18:07 -0400
                                      Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-07-07 19:35 -0400
                                        Re: About java program. Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-07-07 20:42 -0400
                                      Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-07-08 20:50 +0200
                                        Re: About java program. Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-07-08 15:01 -0400
                                          Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-07-08 23:29 +0200
                                Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-07-06 16:27 -0400
                                  Re: About java program. Lew <lewbloch@gmail.com> - 2013-07-06 13:41 -0700
                          Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-07-05 21:59 -0400
                Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-17 21:06 +0100
              Re: About java program. Joshua Cranmer 🐧 <Pidgeot18@verizon.invalid> - 2013-06-17 17:36 -0500
                Re: About java program. Robert Klemme <shortcutter@googlemail.com> - 2013-06-18 08:24 +0200
                Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-18 09:03 +0100
                  Re: About java program. Joshua Cranmer 🐧 <Pidgeot18@verizon.invalid> - 2013-06-18 13:07 -0500
                  Re: About java program. Lew <lewbloch@gmail.com> - 2013-06-18 14:48 -0700
                    Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-19 08:36 +0100
                Re: About java program. Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-06-18 23:33 -0300
                  Re: About java program. lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-06-19 08:34 +0100
              Re: About java program. Arne Vajhøj <arne@vajhoej.dk> - 2013-07-04 22:53 -0400
    Re: About java program. Roedy Green <see_website@mindprod.com.invalid> - 2013-06-16 07:04 -0700
    Re: About java program. Jeff Higgins <jeff@invalid.invalid> - 2013-06-18 04:06 -0400

Page 2 of 6 — ← Prev page 1 [2] 3 4 5 6  Next page →


#24473

FromArved Sandstrom <asandstrom2@eastlink.ca>
Date2013-06-19 15:16 -0300
Message-ID<Pzmwt.43488$O61.10260@newsfe14.iad>
In reply to#24466
On 06/19/2013 04:50 AM, lipska the kat wrote:
> On 18/06/13 21:50, Arved Sandstrom wrote:
>> On 06/17/2013 07:13 PM, Daniele Futtorovic wrote:
>>> On 17/06/2013 20:49, Eric Sosman allegedly wrote:
>>>> On 6/17/2013 2:32 PM, Joerg Meier wrote:
>>>>> [...]
>>>>> Personally, I found your example considerably harder to read than
>>>>> the one
>>>>> liner, as well as harder to read than what would have been my
>>>>> solution:
>>>>>
>>>>> private boolean askYesNoquestion (String str){
>>>>>       if(str.equals("yes"))
>>>>>           return true;
>>>>>
>>>>>       return false;
>>>>> }
>>>>
>>>>      Or, for even greater clarity:
>
> [snip drivel]
>
>> See my answer to Eric, all this is just ridiculing reasonable
>> programming practices.
>>
>> Even given Robert's example where the NPE-safe equals() is wrapped in a
>> method that constrains the type of object being compared to, it may not
>> be expected or acceptable that the String is null. So perhaps you do
>> want to check for that, maybe with Apache StringUtils.isBlank().
>>
>> Sure, the contrived absurd examples are retarded; so is the mockery of
>> defensive programming. Oh well, there's a reason why most software
>> projects still fail or go vastly over budget.
>
> Have you taken a 'sensible pill' by any chance?
>
> I find myself agreeing with you twice in the same thread ... is it me?
>
> IME one of the main reasons for failure is the attitude of certain team
> members that they are far too clever or far too important to the project
> to code responsibly. Their attitude is 'gosh, look  at me I'm so clever
> that I can write code that only I can understand'
>
> I once knew a PhD who's attitude to commenting code was 'I don't need
> comments, I can read code'. Unfortunately this attitude carried over to
> his own code which was almost completely uncommented. When asked to
> comment his code his response was 'if you need comments then perhaps
> you'd better find something else to do' I fired his ass :-)
>
> I think maybe a few of the responders to this thread could do with a
> lesson in basic code readability. Of course they would never admit it,
> they're obviously *way* to smart.
>
> lipska
>
I don't think I took a "sensible pill". :-)

I fairly routinely encounter uninformed programmers, or prima donna 
programmers. Or simply 9-5 M-F uninterested unionized programmers who 
can't lose their job even if they do nothing. Over thirty years this 
covers several hundred projects, teams and clients (in-depth knowledge 
of those situations even if I wasn't actually directly involved), so I 
don't think my observations are completely anecdotal or without merit.

The LCD is the average guy - and these days it's still overwhelmingly 
guys - who isn't all that experienced (after all, every one of us once 
had just 2 or 5 or 10 years of experience), who may not be formally 
trained or may be badly educated, who may not be that motivated, and who 
quite often regards programming as a way to pay the bills and not as a 
craft nor as a delight.

If we stick to Java, the LCD doesn't quite get the difference between 
reference and equals() comparisons, and when informed still needs 
coaching to write a good equals(). The LCD often has never heard of 
O(n), and far from being able to choose a good sort has in fact never 
heard of most of the common sorting algorithms. Same goes for search, I 
run across coders all the time that have never heard of fundamental 
search strategies. This average programmer doesn't read blogs or 
articles, doesn't know white box or black box testing theory, knows 
almost nothing about JVM tuning [1], and is very weak on concurrency. So 
forth and so on.

This is what *I* see in industry, in government and large corporate IT 
projects. But maybe other folks have experienced idylls of nothing but 
top-notch developers, and have started to get complacent. Dunno.

I don't know why there's even an argument about this, either defensive 
coding or dumbing stuff down. In the real non-academic world you've got 
to do it.

AHS

-- 
When a true genius appears, you can know him by this sign:
that all the dunces are in a confederacy against him.
-- Jonathan Swift

[toc] | [prev] | [next] | [standalone]


#24476

FromLew <lewbloch@gmail.com>
Date2013-06-19 16:20 -0700
Message-ID<6db4a3e5-285c-485c-affc-7891f92f4e5a@googlegroups.com>
In reply to#24473
Arved Sandstrom wrote:
. . . 
> If we stick to Java, the LCD doesn't quite get the difference between 
> reference and equals() comparisons, and when informed still needs 
> coaching to write a good equals(). The LCD often has never heard of 
> O(n), and far from being able to choose a good sort has in fact never 
> heard of most of the common sorting algorithms. Same goes for search, I 
> run across coders all the time that have never heard of fundamental 
> search strategies. This average programmer doesn't read blogs or 
> articles, doesn't know white box or black box testing theory, knows 
> almost nothing about JVM tuning [1], and is very weak on concurrency. So 
> forth and so on.

The sad thing is that your observations are accurate, and mine are similar.

The thing that makes me mad is that, despite these people's job titles, 
they are not computer programmers. The things you describe are elementary 
programming knowledge, things taught early in the process. For anyone to 
collect a paycheck for that skill not to know these things is an insult.

They should be fired.

This is the sort of thing that makes me favor making computer programming 
a formal engineering discipline. No one, at all anywhere, should tolerate someone 
calling themselves a computer programmer who is that ignorant, incompetent and 
uncommitted to the skills of their profession, let alone pay them for it.

-- 
Lew

[toc] | [prev] | [next] | [standalone]


#24689

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-07 13:31 -0400
Message-ID<krc871$sfa$1@dont-email.me>
In reply to#24476
On 06/19/2013 07:20 PM, Lew wrote:
> Arved Sandstrom wrote:
> . . .
>> If we stick to Java, the LCD doesn't quite get the difference between
>> reference and equals() comparisons, and when informed still needs
>> coaching to write a good equals(). The LCD often has never heard of
>> O(n), and far from being able to choose a good sort has in fact never
>> heard of most of the common sorting algorithms. Same goes for search, I
>> run across coders all the time that have never heard of fundamental
>> search strategies. This average programmer doesn't read blogs or
>> articles, doesn't know white box or black box testing theory, knows
>> almost nothing about JVM tuning [1], and is very weak on concurrency. So
>> forth and so on.
>
> The sad thing is that your observations are accurate, and mine are similar.
>
> The thing that makes me mad is that, despite these people's job titles,
> they are not computer programmers. The things you describe are elementary
> programming knowledge, things taught early in the process. For anyone to
> collect a paycheck for that skill not to know these things is an insult.
>
> They should be fired.
>
> This is the sort of thing that makes me favor making computer programming
> a formal engineering discipline. No one, at all anywhere, should tolerate someone
> calling themselves a computer programmer who is that ignorant, incompetent and
> uncommitted to the skills of their profession, let alone pay them for it.
>

A recent browsing session starting at

Computing - From Wikipedia, the free encyclopedia
<http://en.wikipedia.org/wiki/Computing>

led to

Laplante, Phillip (2007)
What Every Engineer Should Know about Software Engineering
<books.google.com/books?isbn=1420006746>

and

Software Engineering Body of Knowledge
 From Wikipedia, the free encyclopedia
<http://en.wikipedia.org/wiki/Software_Engineering_Body_of_Knowledge>

and

Curricula Recommendations
Association for Computing Machinery
<http://www.acm.org/education/curricula-recommendations>

[toc] | [prev] | [next] | [standalone]


#24698

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-07 18:16 -0400
Message-ID<krcou0$oua$1@dont-email.me>
In reply to#24689
On 07/07/2013 01:31 PM, Jeff Higgins wrote:

> Software Engineering Body of Knowledge
>  From Wikipedia, the free encyclopedia
> <http://en.wikipedia.org/wiki/Software_Engineering_Body_of_Knowledge>

<http://martinfowler.com/bliki/Swebok.html>

[toc] | [prev] | [next] | [standalone]


#24699

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-07 19:21 -0400
Message-ID<krcsme$9co$1@dont-email.me>
In reply to#24689
On 07/07/2013 01:31 PM, Jeff Higgins wrote:

> A recent browsing session starting at

> led to

> and

> and
>
Fabio Paternò
End User Development: Survey of an Emerging Field for Empowering People
<http://www.hindawi.com/isrn/se/2013/532659/>

[toc] | [prev] | [next] | [standalone]


#24701

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-07 20:07 -0400
Message-ID<krcvd0$kaf$1@dont-email.me>
In reply to#24699
On 07/07/2013 07:21 PM, Jeff Higgins wrote:
> Fabio Paternò
> End User Development: Survey of an Emerging Field for Empowering People
> <http://www.hindawi.com/isrn/se/2013/532659/>

memento for jsh
<http://interaction-design.org/books/hci.html>
<http://interaction-design.org/encyclopedia/end-user_development.html
>

[toc] | [prev] | [next] | [standalone]


#24702

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-07 20:21 -0400
Message-ID<krd070$nvm$1@dont-email.me>
In reply to#24701
On 07/07/2013 08:07 PM, Jeff Higgins wrote:
> memento for jsh
> <http://interaction-design.org/books/hci.html>
> <http://interaction-design.org/encyclopedia/end-user_development.html

Psychology of Programming Interest Group
<http://www.ppig.org/>

A logical mind, not a programming mind:
Psychology of a professional end-user
<http://www.ppig.org/papers/22nd-EUP-1.pdf>

[toc] | [prev] | [next] | [standalone]


#24703

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-07 20:40 -0400
Message-ID<krd1bq$sie$1@dont-email.me>
In reply to#24702
On 07/07/2013 08:21 PM, Jeff Higgins wrote:
> A logical mind, not a programming mind: Psychology of a professional
>  end-user <http://www.ppig.org/papers/22nd-EUP-1.pdf>

"For his part, J. accepted his responsibility in part as an educational
one, providing C. with valuable skills that would enable her to be more
effective when carrying out future programming work. Given that the two
had comparable professional seniority, this educational objective often
amounted to a clash of alternative intellectual styles. In the
educational approach taken by J., the future development needs described
by C. could be achieved more effectively by adopting more abstract
analysis and problem-solving strategies – strategies that are completely
characteristic of programming work. However, as described in the
Attention Investment model (Blackwell 2002), abstract strategies can be
expensive ones, requiring greater initial investment of attention, with
potentially low return, or even negative return. When pursuing the
educational objectives in his collaborative relationship with C., J. was
therefore acting as an advocate of a more abstract strategy, attempting
to persuade her that she should adjust the attention investment decision
factors that she already applied. In many of their conversations, C.
resisted this advice, saying that she would prefer to make progress on
the specific, concrete, problem that had motivated the project in the
first place. For his part, J. tried to persuade her that it would be in
her long-term interest to address not just this particular problem, but
the general category of problems of this type, or indeed the general
capabilities to be acquired by gaining experience of the most general
capabilities of the programming language. "

[toc] | [prev] | [next] | [standalone]


#24705

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-07 22:20 -0400
Message-ID<krd76h$jmh$1@dont-email.me>
In reply to#24701
On 07/07/2013 08:07 PM, Jeff Higgins wrote:
> On 07/07/2013 07:21 PM, Jeff Higgins wrote:
>> Fabio Paternò
>> End User Development: Survey of an Emerging Field for Empowering People
>> <http://www.hindawi.com/isrn/se/2013/532659/>
>
> memento for jsh
> <http://interaction-design.org/books/hci.html>
> <http://interaction-design.org/encyclopedia/end-user_development.html

Google-fu failure:
list of very successful software developed by non-professional programmers

[toc] | [prev] | [next] | [standalone]


#24706

FromLew <lewbloch@gmail.com>
Date2013-07-07 21:47 -0700
Message-ID<2427fb11-818e-4d9d-bf76-5deaf14223b6@googlegroups.com>
In reply to#24705
Jeff Higgins wrote:
> Jeff Higgins wrote:
>> Jeff Higgins wrote:
>>> Fabio Patern�
>>> End User Development: Survey of an Emerging Field for Empowering People
>>> <http://www.hindawi.com/isrn/se/2013/532659/>
>>
>> memento for jsh
>> <http://interaction-design.org/books/hci.html>
>> <http://interaction-design.org/encyclopedia/end-user_development.html
> 
> Google-fu failure:
> list of very successful software developed by non-professional programmers

On the flip side, there is quite the long list of unsuccessful software 
developed by very professional professional programmers.

I've read estimates ranging from 1/3rd to 2/3rd, with many clustering near 
one-half, of the failure rate of software projects with costs exceeding 
$100 million.

I knew a guy who worked on one of the ones cited in the literature. I've 
seen one or two first hand that should have been cited.

There are many definitions of "success" in the software industry, relevant 
to a given player defining the term, that differ from the common understanding.
The estimates I have read, however, use a definition along the lines of 
"put into production for the avowed purpose of the project".

Even lame systems were counted as successful if they actually went into 
production for the avowed purpose.

The programmers in many if not all of these notable failures were, from 
what I can determine, not individually incompetent. The problems were either 
in the process or emergent from misaligned definitions of "success".

Many contractors define "success" only insofar as they generate billables.
The actual success of the project is implicitly or explicitly secondary.

Trained professional programmers are necessary to successful systems, but not 
sufficient.

Even properly constituted projects (one where all stakeholders agree on the 
criteria for success and have the requisite skills) risk failure.

I'm not 100% sure what you think, Jeff, based on these links and posts, but I 
am 100% sure that you made me think by posting them.

-- 
Lew

[toc] | [prev] | [next] | [standalone]


#24707

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-08 06:58 -0400
Message-ID<kre5il$g8m$1@dont-email.me>
In reply to#24706
On 07/08/2013 12:47 AM, Lew wrote:
> Jeff Higgins wrote:
>> Jeff Higgins wrote:
>>> Jeff Higgins wrote:
>>>> Fabio Patern�
>>>> End User Development: Survey of an Emerging Field for Empowering People
>>>> <http://www.hindawi.com/isrn/se/2013/532659/>
>>>
>>> memento for jsh
>>> <http://interaction-design.org/books/hci.html>
>>> <http://interaction-design.org/encyclopedia/end-user_development.html
>>
>> Google-fu failure:
>> list of very successful software developed by non-professional programmers
>
> On the flip side, there is quite the long list of unsuccessful software
> developed by very professional professional programmers.

Almost unsurprisingly the unsuccessful case turned more success. I still
haven't found a satisfactory query for either case.

>
> I've read estimates ranging from 1/3rd to 2/3rd, with many clustering near
> one-half, of the failure rate of software projects with costs exceeding
> $100 million.
>
> I knew a guy who worked on one of the ones cited in the literature. I've
> seen one or two first hand that should have been cited.
>
> There are many definitions of "success" in the software industry, relevant
> to a given player defining the term, that differ from the common understanding.
> The estimates I have read, however, use a definition along the lines of
> "put into production for the avowed purpose of the project".
>
> Even lame systems were counted as successful if they actually went into
> production for the avowed purpose.
>
> The programmers in many if not all of these notable failures were, from
> what I can determine, not individually incompetent. The problems were either
> in the process or emergent from misaligned definitions of "success".
>
> Many contractors define "success" only insofar as they generate billables.
> The actual success of the project is implicitly or explicitly secondary.
>
> Trained professional programmers are necessary to successful systems, but not
> sufficient.
>
> Even properly constituted projects (one where all stakeholders agree on the
> criteria for success and have the requisite skills) risk failure.
>
> I'm not 100% sure what you think, Jeff, based on these links and posts, but I
> am 100% sure that you made me think by posting them.

A random recreational browsing session unrelated to the post to which I 
first
followed up. But reading around the links I posted reminded me of the thread
of discussion. The remaining followups to my followups just mark another 
continuation.

What I think. Big World. Small World.

[toc] | [prev] | [next] | [standalone]


#24708

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-08 08:07 -0400
Message-ID<kre9jg$60b$1@dont-email.me>
In reply to#24707
On 07/08/2013 06:58 AM, Jeff Higgins wrote:
>
> What I think. Big World. Small World.

E.g., another very recent posting to this group took me to
<http://graphexploration.cond.org/>
which led to
<http://www.icse-conferences.org/>
another incredible little circularity.

[toc] | [prev] | [next] | [standalone]


#24709

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-08 08:58 -0400
Message-ID<kreci4$lql$1@dont-email.me>
In reply to#24708
On 07/08/2013 08:07 AM, Jeff Higgins wrote:
> On 07/08/2013 06:58 AM, Jeff Higgins wrote:
>>
>> What I think. Big World. Small World.
>
> E.g., another very recent posting to this group took me to
> <http://graphexploration.cond.org/> which led to
> <http://www.icse-conferences.org/> another incredible little
> circularity.
>

and

 From Computing Curricula 2005 The Overview Report
4.5.5. Computing Accreditation in the United States Until recently,
computing accreditation in the U.S. was limited and fragmented. It is
now more unified and more extensive. Historically, two organizations
accredited computing degree programs. The Accreditation Board for
Engineering and Technology (commonly know as ABET) accredited
undergraduate engineering programs of all kinds, including electrical
engineering and computer engineering. The Computing Sciences
Accreditation Board (known as CSAB) accredited undergraduate computer
science programs. Recently, CSAB, recreated as CSAB Inc., has become a
member society of a renamed ABET Inc., and now ABET accredits
engineering, technology, computing, and applied science programs.
Currently, accreditation of CE, CS, IS, and SE programs is ongoing, and
accreditation of IT programs has begun.

?

National Institute for Automotive Service Excellence (ASE)
<http://www.ase.com/About-ASE/ASE-at-a-Glance.aspx>
Sensory Overload: How the New Mercedes S-class Sees All
<http://blog.caranddriver.com/sensory-overload-how-the-new-mercedes-s-class-sees-all/>

[toc] | [prev] | [next] | [standalone]


#24710

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-08 09:18 -0400
Message-ID<kredos$sii$1@dont-email.me>
In reply to#24709
On 07/08/2013 08:58 AM, Jeff Higgins wrote:

> Sensory Overload: How the New Mercedes S-class Sees All
> <http://blog.caranddriver.com/sensory-overload-how-the-new-mercedes-s-class-sees-all/>
>
The in print version was much better. Especially the hilarious,
"Once you see the clown face, you'll always see the clown face."

[toc] | [prev] | [next] | [standalone]


#24711

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-08 09:47 -0400
Message-ID<kreffl$6b6$1@dont-email.me>
In reply to#24710
On 07/08/2013 09:18 AM, Jeff Higgins wrote:
> On 07/08/2013 08:58 AM, Jeff Higgins wrote:
>
>> Sensory Overload: How the New Mercedes S-class Sees All
>> <http://blog.caranddriver.com/sensory-overload-how-the-new-mercedes-s-class-sees-all/>
>>
>>
> The in print version was much better. Especially the hilarious,
> "Once you see the clown face, you'll always see the clown face."
<http://media.caranddriver.com/images/13q2/514953/2014-mercedes-benz-s400-hybrid-interior-photo-516412-s-520x318.jpg>

[toc] | [prev] | [next] | [standalone]


#24712

FromJeff Higgins <jeff@invalid.invalid>
Date2013-07-08 10:07 -0400
Message-ID<kregks$cqv$1@dont-email.me>
In reply to#24711
On 07/08/2013 09:47 AM, Jeff Higgins wrote:
> On 07/08/2013 09:18 AM, Jeff Higgins wrote:
>> On 07/08/2013 08:58 AM, Jeff Higgins wrote:
>>
>>> Sensory Overload: How the New Mercedes S-class Sees All
>>> <http://blog.caranddriver.com/sensory-overload-how-the-new-mercedes-s-class-sees-all/>
>>>
>>>
>>>
>> The in print version was much better. Especially the hilarious,
>> "Once you see the clown face, you'll always see the clown face."
> <http://media.caranddriver.com/images/13q2/514953/2014-mercedes-benz-s400-hybrid-interior-photo-516412-s-520x318.jpg>
>
MB Design has to be a fun place to work - imagine some manager signing 
off that implementation.

[toc] | [prev] | [next] | [standalone]


#24471

FromDaniele Futtorovic <da.futt.news@laposte-dot-net.invalid>
Date2013-06-19 16:42 +0200
Message-ID<kpsfn7$k9k$1@dont-email.me>
In reply to#24454
On 18/06/2013 22:50, Arved Sandstrom allegedly wrote:
> <snip />
> See my answer to Eric, all this is just ridiculing reasonable
> programming practices.
> 
> Even given Robert's example where the NPE-safe equals() is wrapped in a
> method that constrains the type of object being compared to, it may not
> be expected or acceptable that the String is null. So perhaps you do
> want to check for that, maybe with Apache StringUtils.isBlank().
> 
> Sure, the contrived absurd examples are retarded; so is the mockery of
> defensive programming. Oh well, there's a reason why most software
> projects still fail or go vastly over budget.

I'm all for defensive programming, but I think that there's a limit
where it can be on the verge of silliness, and that that limit has been
grazed here.

Less-than-bright programmers IMO cannot be a justification for crossing
that line; less-than-bright programmers have more ways to mess things up
than you could possibly ever guard against. "Do not underestimate the
ingenuity of complete fools", as the saying goes.

And for me, there is an additional aspect: if a piece of code does
something simple, something basic, then I will want it to be short, and
vice-versa. Verbosity of code, to me, should hold a first-glance
indication of the complexity of the algorithm. In other words: be terse
IFF it's basic, be verbose IFF it's not.

Perhaps your mileage does vary. No beef with that. Just throwing in my
two cents.

-- 
DF.

[toc] | [prev] | [next] | [standalone]


#24493

FromArved Sandstrom <asandstrom2@eastlink.ca>
Date2013-06-20 23:33 -0300
Message-ID<oYOwt.19280$9m5.18160@newsfe26.iad>
In reply to#24471
On 06/19/2013 11:42 AM, Daniele Futtorovic wrote:
> On 18/06/2013 22:50, Arved Sandstrom allegedly wrote:
>> <snip />
>> See my answer to Eric, all this is just ridiculing reasonable
>> programming practices.
>>
>> Even given Robert's example where the NPE-safe equals() is wrapped in a
>> method that constrains the type of object being compared to, it may not
>> be expected or acceptable that the String is null. So perhaps you do
>> want to check for that, maybe with Apache StringUtils.isBlank().
>>
>> Sure, the contrived absurd examples are retarded; so is the mockery of
>> defensive programming. Oh well, there's a reason why most software
>> projects still fail or go vastly over budget.
>
> I'm all for defensive programming, but I think that there's a limit
> where it can be on the verge of silliness, and that that limit has been
> grazed here.
>
> Less-than-bright programmers IMO cannot be a justification for crossing
> that line; less-than-bright programmers have more ways to mess things up
> than you could possibly ever guard against. "Do not underestimate the
> ingenuity of complete fools", as the saying goes.
>
> And for me, there is an additional aspect: if a piece of code does
> something simple, something basic, then I will want it to be short, and
> vice-versa. Verbosity of code, to me, should hold a first-glance
> indication of the complexity of the algorithm. In other words: be terse
> IFF it's basic, be verbose IFF it's not.
>
> Perhaps your mileage does vary. No beef with that. Just throwing in my
> two cents.
>
It's a good discussion. I'm not personally convinced that verbosity adds 
complexity, as a rule. There's really two types of complexity here: 
maintainability complexity - as in, can Joe Blow 12 months later 
understand the code best if it's compact versus unrolled, and formal 
complexity, cyclomatic and otherwise.

I'll admit that verbosity does usually add maintainability complexity, 
if not the other kind. But not always. I've seen plenty of code that is 
conceptually quite complex but very terse.

AHS

-- 
When a true genius appears, you can know him by this sign:
that all the dunces are in a confederacy against him.
-- Jonathan Swift

[toc] | [prev] | [next] | [standalone]


#24494

FromMartin Gregorie <martin@address-in-sig.invalid>
Date2013-06-21 04:16 +0000
Message-ID<kq0k30$ubf$1@dont-email.me>
In reply to#24493
On Thu, 20 Jun 2013 23:33:56 -0300, Arved Sandstrom wrote:

> It's a good discussion. I'm not personally convinced that verbosity adds
> complexity, as a rule. There's really two types of complexity here:
> maintainability complexity - as in, can Joe Blow 12 months later
> understand the code best if it's compact versus unrolled, and formal
> complexity, cyclomatic and otherwise.
>
I'm with you there.
 
> I'll admit that verbosity does usually add maintainability complexity,
>
My attitude is that well-laid out code with well-thought out names and 
intelligently commented offers about the best chance of being more easily 
maintainable. I prefer blocks of well formatted and carefully written 
comments places ahead of what they describe to any other type.

> if not the other kind. But not always. I've seen plenty of code that is
> conceptually quite complex but very terse.
>
I've certainly see some memorable examples of badly documented and over-
clever code in the past.

One of my favourite examples of bad documentation was actually quite good 
code: it was just the commenting style that was naff. This was MC 6800 
assembler, and the house style was to add a comment alongside every 
instruction whether it needed it or not: the machine had INC and DEC 
instructions to and or subtract 1 from a register, but did it really add 
anything the write "BUMP THE B REGISTER" alongside every INC B 
instruction?

As it happens, my worst ever example was also assembler: this time PLAN 3 
assembler for an ICL 1900. In this case it was a lineprinter page, i.e. 
about 60 instructions whose task was the work out the date of the last 
day of the current month so it could be printed on financial statements. 
it worked by doing arithmetic on the current date in "dd/mm/yy" format  
This page has two comments: the first said "Calculate the last day of the 
month" and the second said "Works until Feb 2100". The rest of the page 
contained a mess of register-to-register operations and relative 
branches. There wasn't a single label or variable name in the whole mess. 
I never met anybody who could follow it past its first dozen steps - and 
that includes me - and I used to be fairly good at programming in PLAN.

The silly thing was that the date calculation was trivial on a 1900, 
which held dates internally as days since 31 Dec 1899 and provided a  set 
of date manipulation subroutines. The obvious solution, given that 
library, and writing the routine in pseudo-Java in deference to this 'ere 
august forum, looks like this:

  public String lastDayOfMonth(String today)
  {
    int day = 1;
    int month = today.substring(3,2);
    int year = today.substring(6);
    if (month > 12)
    {
      year++;
      month = 1;
    }
  
    days = gdatebin(String.format("%02d/%02d/%02d",day, month, year));
    return gbindate(days - 1);
  }
  
... and wasn't much longer in assembler. 

gdatebin() converted a date string into binary days since 31/12/1899 and 
gbindate() did the reverse. I have no idea why the bloke thought his mess 
of assembler would fall over after Feb 2100: the 1900 held dates in a 
signed 24 bit number, so its Y2K moment isn't due until some time in 
24866 AD.

And, yes, I do know my algorithm worked correctly despite leap years and 
all: it ran for years as part of an accounting package and anybody could 
see exactly how it worked even though it was written in COBOL.


-- 
martin@   | Martin Gregorie
gregorie. | Essex, UK
org       |

[toc] | [prev] | [next] | [standalone]


#24496

FromJoerg Meier <joergmmeier@arcor.de>
Date2013-06-21 12:27 +0200
Message-ID<6euehy3ijswn.e08p5nxwbfbf.dlg@40tude.net>
In reply to#24494
On Fri, 21 Jun 2013 04:16:32 +0000 (UTC), Martin Gregorie wrote:

> [...]

>     days = gdatebin(String.format("%02d/%02d/%02d",day, month, year));
>     return gbindate(days - 1);
>   }

> ... and wasn't much longer in assembler. 

> gdatebin() converted a date string into binary days since 31/12/1899 and 
> gbindate() did the reverse. I have no idea why the bloke thought his mess 
> of assembler would fall over after Feb 2100: the 1900 held dates in a 
> signed 24 bit number, so its Y2K moment isn't due until some time in 
> 24866 AD.

It's ironic that after all that, your algorithm would have failed on Y2K ;)

Liebe Gruesse,
		Joerg

-- 
Ich lese meine Emails nicht, replies to Email bleiben also leider
ungelesen.

[toc] | [prev] | [next] | [standalone]


Page 2 of 6 — ← Prev page 1 [2] 3 4 5 6  Next page →

Back to top | Article view | comp.lang.java.programmer


csiph-web