Saturday, October 15, 2016

Digest for comp.lang.c++@googlegroups.com - 25 updates in 1 topic

Jerry Stuckle <jstucklex@attglobal.net>: Oct 14 07:29PM -0400

On 10/14/2016 3:08 PM, 4ndre4 wrote:
> stick to what you need at the moment. It's a successful way to work as
> you avoid spending too long on unneeded functionality. Planning for
> reusable code has a cost.
 
Agile methodologies are good for small programs, but they don't work
when you have 50 or more programmers working on a project for a year or
two. Even projects with 3 or 4 programmers going on for a couple of
months suffer without a decent design up front.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 14 07:32PM -0400

On 10/14/2016 3:08 PM, 4ndre4 wrote:
> stick to what you need at the moment. It's a successful way to work as
> you avoid spending too long on unneeded functionality. Planning for
> reusable code has a cost.
 
Agile methodologies work for small projects, but don't do at all well
when you have fifty or more programmers working a year or longer on a
project. Even 3 or 4 programmers working for a couple of months don't
do well without an initial design.
 
And agile methodologies are not conducive to code reuse.
 
Agile has its place. But it is overused, IMHO. This leads to lots of
code rewriting, poor test methodologies, and overall, more bugs.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 14 07:33PM -0400

On 10/14/2016 6:09 PM, JiiPee wrote:
> is should I still make it separate. I quite strongly think that in this
> project it will not be used in any other class. But cannot be 100% sure
> though
 
Not only in this project - but code reuse is most profitable when you
can reuse the same code in other projects.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
4ndre4 <a.laforgia@gmail.com>: Oct 14 04:43PM -0700

On Saturday, 15 October 2016 00:29:39 UTC+1, Jerry Stuckle wrote:
 
[...]
> when you have 50 or more programmers working on a project for a year or
> two. Even projects with 3 or 4 programmers going on for a couple of
> months suffer without a decent design up front.
 
You couldn't be more wrong. Either you don't know how Agile is implemented, or you don't know companies that use it. Agile methodologies have by now proven to be effective in large organisations and for large projects. I work in a multinational company with dozens of Scrum teams who've been working on very large projects for many years now. We have just estimated 2 years of work on a new project. Poor test methodologies? More bugs? Seriously, you couldn't be more wrong.
4ndre4 <a.laforgia@gmail.com>: Oct 14 04:46PM -0700

On Friday, 14 October 2016 23:09:29 UTC+1, JiiPee wrote:
 
[...]
> yes you have a point. Although in this current program I do not see any
> other use for that direction right now.
 
Do not follow his suggestion. Focus on what you need in the immediate.
JiiPee <no@notvalid.com>: Oct 15 01:29AM +0100

On 15/10/2016 00:46, 4ndre4 wrote:
>> yes you have a point. Although in this current program I do not see any
>> other use for that direction right now.
> Do not follow his suggestion. Focus on what you need in the immediate.
 
I guess in these advises many times people are partly correct :). So in
some situations what they say is valid... so maybe its good to know
everybodys views. Yes might be this advice does not suit to this
project, but maybe in other projects?
Jerry Stuckle <jstucklex@attglobal.net>: Oct 14 08:46PM -0400

On 10/14/2016 7:43 PM, 4ndre4 wrote:
>> two. Even projects with 3 or 4 programmers going on for a couple of
>> months suffer without a decent design up front.
 
> You couldn't be more wrong. Either you don't know how Agile is implemented, or you don't know companies that use it. Agile methodologies have by now proven to be effective in large organisations and for large projects. I work in a multinational company with dozens of Scrum teams who've been working on very large projects for many years now. We have just estimated 2 years of work on a new project. Poor test methodologies? More bugs? Seriously, you couldn't be more wrong.
 
Oh, I DO know how Agile is implemented, and I've seen it used in several
projects - both to success and failure. And even IBM (whom I used to
work for and has been one of my clients) has used Agile. But they have
found it does not work well on large projects. The same with many of my
clients - most of which are on the Fortune 500 list.
 
It has its place. But the mistake is in thinking it is the best way for
every project. That is the thinking of someone who has never worked
with a proper design and project management.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 14 08:47PM -0400

On 10/14/2016 7:46 PM, 4ndre4 wrote:
>> yes you have a point. Although in this current program I do not see any
>> other use for that direction right now.
 
> Do not follow his suggestion. Focus on what you need in the immediate.
 
Says someone who has never reused code before. You'd better go back to
school. You know little about multiple projects - except how to design
on the fly.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 14 08:51PM -0400

On 10/14/2016 8:29 PM, JiiPee wrote:
> some situations what they say is valid... so maybe its good to know
> everybodys views. Yes might be this advice does not suit to this
> project, but maybe in other projects?
 
Very possibly in other projects. Anytime I create code - be it in C,
C++, Java or other languages, I consider is this code potentially
reusable, and if so, how.
 
A lot of the time I find it's too specialized and is not. Other times,
I can reuse a lot of code. I've had projects with well over 50% code
reuse from other projects. It has saved a huge amount of time coding,
and since the code is already debugged, the result is less test time and
fewer bugs. Overall, a huge cost savings.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
"Öö Tiib" <ootiib@hot.ee>: Oct 14 06:06PM -0700

On Friday, 14 October 2016 21:52:18 UTC+3, Jerry Stuckle wrote:
> > thing.
 
> Not at all. It's called reusable code, and it's quite possible to plan
> for it - language libraries are an excellent example.
 
What "not at all"? What is called "reusable code"? Does it predict future?
When someone writes something that he does not see as being needed right
now but thinks "may be it is needed in future" then he is usually wrong.
 
 
> I've seen it being done for over 30 years. And the groups that do it
> are much more efficient because they don't have to keep reinventing the
> wheel.
 
I do not see where I suggested to reinvent wheels.
Jerry Stuckle <jstucklex@attglobal.net>: Oct 14 11:02PM -0400

On 10/14/2016 9:06 PM, Öö Tiib wrote:
 
> What "not at all"? What is called "reusable code"? Does it predict future?
> When someone writes something that he does not see as being needed right
> now but thinks "may be it is needed in future" then he is usually wrong.
 
It's not at all pointless to make something compatible in the future.
I've been doing it for over 30 years. So have a lot of great
programmers I know - in fact, all of the best programmers I know do it.
 
It comes with experience and planning. No, I'm not always right.
Sometimes I think something is reusable in the future but never use it.
Other times I don't plan for reuse, but find later I can reuse something.
 
I've built a huge library of code over the years. And most of it is
reusable.
 
But then do you reinvent the C++ libraries with every program? Those
were planned with reuse in mind and millions of programmers reuse them
every day.
 
But according to you, they need to write all of the library code from
the scratch, with every program.
 
>> are much more efficient because they don't have to keep reinventing the
>> wheel.
 
> I do not see where I suggested to reinvent wheels.
 
That's exactly what you're doing when you have to write code from
scratch with every project.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
4ndre4 <a.laforgia@gmail.com>: Oct 14 11:52PM -0700

On Saturday, 15 October 2016 01:46:11 UTC+1, Jerry Stuckle wrote:
 
[...]
> Oh, I DO know how Agile is implemented,
 
You clearly don't. If you say that Agile cannot be used on large projects, you don't know what you're talking about. As said, there's plenty of companies (mine included) out there using Agile on many large projects (see Microsoft Team Foundations Group with 3000 people). And you might want to look at these:
 
http://www.slideshare.net/alankan1/how-does-ibm-do-agile
http://agilescout.com/video-agile-scrum-at-facebook/
 
All big names out there use Agile.

As usual, you end up belittling others' experience in designing and developing software systems just because you have no real arguments. The problem is that many company DON'T know how to implement Agile. That's another problem.
4ndre4 <a.laforgia@gmail.com>: Oct 15 12:03AM -0700

On Saturday, 15 October 2016 01:47:19 UTC+1, Jerry Stuckle wrote:
 
[...]
LOL :) Stuckle, your aggressive reactions are a clear sign of your lack of confidence and real arguments. Keep your opinions. I am not trying to persuade thick numskulls like you. I have worked on a good number of very large projects in my life, for very large companies, and I am working on a new large project right now. You don't know what I know so you'd better shut up ;)
4ndre4 <a.laforgia@gmail.com>: Oct 15 12:09AM -0700

On Saturday, 15 October 2016 01:30:04 UTC+1, JiiPee wrote:
 
[...]
> I guess in these advises many times people are partly correct :)
 
Planning for code reuse is VERY expensive. In the must-read book Mythical Man Month, Fred Brooks explains that reusable code costs three times as much to develop as single use code. There is a lot of fuss around reusable code, especially from old-school people (like Stuckle), but that's actually a myth. The way software is developed today has greatly changed. There's plenty of information around about this. I am not saying that writing parts of your code so they can be reused is bad; *planning* for code reuse has proven to be a bad idea.
4ndre4 <a.laforgia@gmail.com>: Oct 15 12:10AM -0700

On Saturday, 15 October 2016 01:51:09 UTC+1, Jerry Stuckle wrote:
 
[...]
> Very possibly in other projects.
 
You do not justify the code of code development by saying "I might reuse it in other projects".
4ndre4 <a.laforgia@gmail.com>: Oct 15 12:42AM -0700

On Saturday, 15 October 2016 00:32:46 UTC+1, Jerry Stuckle wrote:
 
[...]
By the way, look at this, Stuckle:
 
https://www.linkedin.com/jobs/view/196601961?refId=abd4186e-7e31-4c74-8910-555e9a4ef7ea&recommendedFlavor=SCHOOL_RECRUIT&trk=jobshomev2_jymbii
 
You'll like it.
Jerry Stuckle <jstucklex@attglobal.net>: Oct 15 09:54AM -0400

On 10/15/2016 2:52 AM, 4ndre4 wrote:
 
> [...]
>> Oh, I DO know how Agile is implemented,
 
> You clearly don't. If you say that Agile cannot be used on large projects, you don't know what you're talking about. As said, there's plenty of companies (mine included) out there using Agile on many large projects (see Microsoft Team Foundations Group with 3000 people). And you might want to look at these:
 
Using Agile is quite similar to building without a blueprint. You can
do it with a dog house or a chicken coop - but it doesn't work well for
a ten story combination commercial/residential building.
 
> http://www.slideshare.net/alankan1/how-does-ibm-do-agile
> http://agilescout.com/video-agile-scrum-at-facebook/
 
> All big names out there use Agile.
 
Oh, so you know every big name out there, and know they use Agile?
 
> As usual, you end up belittling others' experience in designing and developing software systems just because you have no real arguments. The problem is that many company DON'T know how to implement Agile. That's another problem.
 
No, you're the one who started with "You don't know what you're talking
about". But like all idiots and trolls, you try to shift the blame.
 
People who claim Agile is good for every project have never been on a
project with a proper design and test environment.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 15 09:57AM -0400

On 10/15/2016 3:42 AM, 4ndre4 wrote:
> By the way, look at this, Stuckle:
 
> https://www.linkedin.com/jobs/view/196601961?refId=abd4186e-7e31-4c74-8910-555e9a4ef7ea&recommendedFlavor=SCHOOL_RECRUIT&trk=jobshomev2_jymbii
 
> You'll like it.
 
So? What do I care what a stoopid troll posts? And that's exactly what
you've shown yourself to be.
 
But than that's exactly what I expect from someone who posts with a fake
name from a gmail account. You have zero credibility. I suspect you're
still in your 20's and only been programming professionally for 4-5
years max. Probably not even that long.
 
And it is MR. Stuckle to you, troll.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 15 10:01AM -0400

On 10/15/2016 3:10 AM, 4ndre4 wrote:
 
> [...]
>> Very possibly in other projects.
 
> You do not justify the code of code development by saying "I might reuse it in other projects".
 
Once again you show you don't know how to build reliable, reusable code.
But then that's not something Agile developers do. They reinvent the
wheel with every project.
 
I have a library hundreds of megabytes of code I've developed over the
last 30 years. No, I haven't reused all of it. But if I hadn't planned
on reuse, I couldn't have reused ANY of it.
 
For instance, I had linked lists, dynamic arrays, strings and other
class libraries long before STL came along. And I used them in a lot of
projects (especially strings).
 
But then I guess you don't use the C++ libraries or templates, either.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 15 10:07AM -0400

On 10/15/2016 3:09 AM, 4ndre4 wrote:
 
> [...]
>> I guess in these advises many times people are partly correct :)
 
> Planning for code reuse is VERY expensive. In the must-read book Mythical Man Month, Fred Brooks explains that reusable code costs three times as much to develop as single use code. There is a lot of fuss around reusable code, especially from old-school people (like Stuckle), but that's actually a myth. The way software is developed today has greatly changed. There's plenty of information around about this. I am not saying that writing parts of your code so they can be reused is bad; *planning* for code reuse has proven to be a bad idea.
 
In the short run, it is a BIT more expensive - but not three times.
Maybe 25% more. However, the first time you reuse the code, you have
saved 100% of the cost.
 
And yes, I claim this from around 50 years of programming experience,
including almost 30 in C++ and 26 years as a consultant, mostly to
Fortune 500 companies.
 
It's all in the planning. Good design and it's cheap to do it. But
with Agile development it very well could be three times the cost.
 
Code reuse is called a myth by those who can't do it. It is a very
useful and cost savings measure when implemented by competent programmers.
 
You could learn something from us "old timers" if you opened your mind.
But then I don't expect much from a troll who uses a pseudonym from a
gmail account.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 15 10:12AM -0400

On 10/15/2016 3:03 AM, 4ndre4 wrote:
> On Saturday, 15 October 2016 01:47:19 UTC+1, Jerry Stuckle wrote:
 
> [...]
> LOL :) Stuckle, your aggressive reactions are a clear sign of your lack of confidence and real arguments. Keep your opinions. I am not trying to persuade thick numskulls like you. I have worked on a good number of very large projects in my life, for very large companies, and I am working on a new large project right now. You don't know what I know so you'd better shut up ;)
 
Not at all aggressive. Just calling a stoopid troll exactly what you
are.
 
I guess you never use any of the C++ libraries, do you? You create
everything from scratch with every project.
 
Or maybe you are just unwilling to admit you are competent enough to
design reusable code. So you try to tell someone with much more
experience that he doesn't know what he's talking about
 
But that's what I expect from someone using a pseudonym from a gmail
account - not even brave enough to use your real name or a real account.
 
And it's MR. Stuckle to you, troll.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
"Öö Tiib" <ootiib@hot.ee>: Oct 15 07:38AM -0700

On Saturday, 15 October 2016 06:03:06 UTC+3, Jerry Stuckle wrote:
> > When someone writes something that he does not see as being needed right
> > now but thinks "may be it is needed in future" then he is usually wrong.
 
> It's not at all pointless to make something compatible in the future.
 
How do you know what *is* in future? You seemingly conflate writing
reusable code with predicting future! No one can predict future.
 
Code can be reused in several places regardless if it was predicted to.
Only thing needed is that it is useful in those several places. If we
don't have such places then we have code that is useful in one place.
So we can indeed waste lot of time to make it "reusable" there and build
a whole "framework" of single application. What is the point? Nothing
else to do?
 
> I've been doing it for over 30 years. So have a lot of great
> programmers I know - in fact, all of the best programmers I know do it.
 
What widely reused thing you made during those 30 years? Nothing.
 
> Other times I don't plan for reuse, but find later I can reuse something.
 
> I've built a huge library of code over the years. And most of it is
> reusable.
 
What I dislike is that you make it sound like I was arguing that code can
not be reused. I nowhere wrote such thing. I wrote that future can't be
known. Also if something is not needed right now then YAGNI, most often
*you* *aren't* *gonna* *need* *it* ever.
 
> every day.
 
> But according to you, they need to write all of the library code from
> the scratch, with every program.
 
Where did I claim that? What in C++ libraries contradicts with what
I actually wrote? Or are you now claiming that something of C++ standard
library is your invention? What it is? What has ever predicted future in
standard library? Most futuristic thing in C++ library was 'std::auto_ptr'
and now it is gone, deprecated.
 
 
> > I do not see where I suggested to reinvent wheels.
 
> That's exactly what you're doing when you have to write code from
> scratch with every project.
 
Yes and I do not see where I suggested that.
"Öö Tiib" <ootiib@hot.ee>: Oct 15 08:12AM -0700

On Saturday, 15 October 2016 17:01:41 UTC+3, Jerry Stuckle wrote:
 
> I have a library hundreds of megabytes of code I've developed over the
> last 30 years.
 
That was pathetic. Writing 200 megabytes of source code with 30 man
years means about 30 000 bytes of source code per day. :D
You can go tell such fairy tales to ignorant people.
Jerry Stuckle <jstucklex@attglobal.net>: Oct 15 04:55PM -0400

On 10/15/2016 10:38 AM, Öö Tiib wrote:
 
>> It's not at all pointless to make something compatible in the future.
 
> How do you know what *is* in future? You seemingly conflate writing
> reusable code with predicting future! No one can predict future.
 
Its called experience. After enough years of programming, a good
programmer can make intelligent decisions on what might be reusable and
what might. You don't need to know the future; you only need to learn
from the past.
 
> So we can indeed waste lot of time to make it "reusable" there and build
> a whole "framework" of single application. What is the point? Nothing
> else to do?
 
Sure, it can be reused in a lot of places. But your fallacy is that it
'wastes a lot of time" to make it reusable. Properly designed, it takes
very little time.
 
And nothing said it had to be an entire framework of a single
application. It can be as little as one class.
 
>> I've been doing it for over 30 years. So have a lot of great
>> programmers I know - in fact, all of the best programmers I know do it.
 
> What widely reused thing you made during those 30 years? Nothing.
 
Well, I had string, linked list, resizable arrays and associative arrays
long before STL came out. And used them in a lot of cases. I have
database classes which are independent of the underlying database. I
have other classes like person, employee and customer. And all kinds of
support classes. The list is way too long to discuss - it probably
totals over 100MB of source code by now.
 
> not be reused. I nowhere wrote such thing. I wrote that future can't be
> known. Also if something is not needed right now then YAGNI, most often
> *you* *aren't* *gonna* *need* *it* ever.
 
You're the one who have argued that it's not worth designing code for
reuse - as you did once again here. I'm just disputing that.
 
> library is your invention? What it is? What has ever predicted future in
> standard library? Most futuristic thing in C++ library was 'std::auto_ptr'
> and now it is gone, deprecated.
 
You're the one who claimed it's not worth designing code for reuse.
Just like you did again here.
 
 
>> That's exactly what you're doing when you have to write code from
>> scratch with every project.
 
> Yes and I do not see where I suggested that.
 
You're the one who claimed it's not worth designing code for reuse.
Just like you did again here.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 15 04:59PM -0400

On 10/15/2016 11:12 AM, Öö Tiib wrote:
 
> That was pathetic. Writing 200 megabytes of source code with 30 man
> years means about 30 000 bytes of source code per day. :D
> You can go tell such fairy tales to ignorant people.
 
First of all, I never said I was the only one who wrote the code. I've
led many multiple-programmer projects, and kept rights to use the code I
designed over that time. Second of all, even your math is off. It's
nowhere near 30KB per day.
 
And BTW - all of that code is heavily commented. I didn't say it was
all code; there are comments in the code, also.
 
Sorry, your show your ignorance.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
You received this digest because you're subscribed to updates for this group. You can change your settings on the group membership page.
To unsubscribe from this group and stop receiving emails from it send an email to comp.lang.c+++unsubscribe@googlegroups.com.

No comments: