Iteration planning for complex frameworks

  • Permalink
  • submit to reddit
  • Email
  • Follow


I'm trying to get an idea of how to introduce agile development (or more
specific eXtreme programming) in a project for developing a potentially
complex generic framework. This framework would offer functionality to:

communication via webservices
easy (generated) extension of the webservice API
generation of ASP.NET screens

first application of this framework would be in rather big ERP applications:
a set of traditional multiplatform legacy backoffices need to be exposed via
the internet.

trying to adhere to the rule: do the most complex thing first, what would be
typical candidates for the first iterations in this example?

maybe we're too ambitious but we're also trying to convince management about
the usefullness of an agile approach. they already commited to frequent
functional discussions (ERP stuff) and development in iterations and the
fact that it probably means we cannot know now what we will have in a year.

my guess is that for the framework stuff the development team themselves
would be the customer right?

please don't tell me we don't need the framework :-( im not sure if I want
to convince management that a whole family of applications we are to develop
dont need the aforementioned framework

any suggestions?
thx
eddy


0
Reply ce.borremans (1) 8/17/2004 2:01:34 PM

See related articles to this posting


Chello wrote:

> trying to adhere to the rule: do the most complex thing first

Yeeek! Where did _that_ rule come from???

-- 
  Phlip
  http://industrialxp.org/community/bin/view/Main/TestFirstUserInterfaces


0
Reply Phlip 8/17/2004 3:02:33 PM

oops sorry, i meant: do the most risky thing first or was it: do the most
important thing first?


"Phlip" <phlip_cpp@yahoo.com> wrote in message
news:d6pUc.1796$ZD2.1734@newssvr32.news.prodigy.com...
> Chello wrote:
>
> > trying to adhere to the rule: do the most complex thing first
>
> Yeeek! Where did _that_ rule come from???
>
> -- 
>   Phlip
>   http://industrialxp.org/community/bin/view/Main/TestFirstUserInterfaces
>
>


0
Reply Chello 8/17/2004 3:29:18 PM

Chello wrote:

> oops sorry, i meant: do the most risky thing first or was it: do the most
> important thing first?

If you do many high risk things first, you will start a project with a
high-risk architecture. (This explains the "Enterprise" in "Enterprise
Application Integration Patterns" etc.)

Software development follows two cycles. Deploying releases to users is the
outer cycle, and implementing features is the inner cycle.

Work the outer cycle in order of strict business priority. Do the batch of
highest-priority things first, and deliver them. Then use them to help
specify the next batch. This is a design technique and a requirements
gathering technique. Subsequent features, and their code, will support the
highest value features. All roads lead to Rome.

Work the inner cycle in order of simplicity. For a given user story, first
solve the simplest condition within it. To invent a language, make it
print("Hello World") first. Solve for several simple cases, then merge the
solutions to solve the general case.

When mathematicians write intricate proofs, such as for geometries that
generalize to any number of dimensions, they first solve a specific proof
for 2D, then a proof for 3D, then for 4D. Armed with these experiences, and
proofs, they merge duplication into a single generic proof for any number of
dimensions.

(Leaving only the multi-dimensional proof in the textbooks, to show off,
turns math books into such light pleasant relaxing reading material.)

"Designing" means organizing the relations between the structure of objects
in memory and their behavior in time. Structure is bone, behavior is muscle,
and perfecting their design is difficult. The best way to seek simplicity is
to start with it.

Now, back to your question. Remember I have never integrated an enterprise.
(Join the Saucer Section to the Drive Section, Cmdr Data!)

> I'm trying to get an idea of how to introduce agile development (or more
> specific eXtreme programming) in a project for developing a potentially
> complex generic framework. This framework would offer functionality to:
>
> communication via webservices
> easy (generated) extension of the webservice API
> generation of ASP.NET screens

How many of those acronyms are already adding value? If any are not yet, do
not deploy them until you find a reason.

Some projects start by guessing which tools they will need, then buying
them. Even if an organization already bought a given tool, adding it to a
project is still a purchase, expecting a cost of ownership lower than return
on investment. If you delay an acquisition until simple code reveals the
need for it, you might never need to acquire. If you do, your well-factored
code will specify the exact tool you need, and will insulate other modules
from the change. After replacing a module, all your tests must still pass.

> first application of this framework would be in rather big ERP
applications:
> a set of traditional multiplatform legacy backoffices need to be exposed
via
> the internet.

If you do that, whatever it means, what will end users see?

Do they want to see "your backend exposed on my browser"?

Or do they really want to see "the sales data from the Namibia office
automatically instead of via e-mail"?

They might really want the latter, but they might not know how to ask for
it. They might think that they must ask for everything, or they will only
get hacks.

> trying to adhere to the rule: do the most complex thing first, what would
be
> typical candidates for the first iterations in this example?

You are discussing requests for infrastructure. Start with requests for real
functionality. Under test, you can trust the infrastructure to emerge.

> maybe we're too ambitious but we're also trying to convince management
about
> the usefullness of an agile approach. they already commited to frequent
> functional discussions (ERP stuff) and development in iterations and the
> fact that it probably means we cannot know now what we will have in a
year.

ERP is not anti-Agile (look at Thoughtworks), but many vendors supply ERP in
huge expensive packages. They get paid whether or not you get the sales
reports from Namibia on-demand.

However, you might now also be up against any differences between what your
managers think "agile" means and what they feel comfortable with.

> my guess is that for the framework stuff the development team themselves
> would be the customer right?

Are you going to write a framework that other developers will then use to
provide features? This is a recipe for disaster because it delays feedback.

> please don't tell me we don't need the framework :-(

You don't need the framework.

> im not sure if I want
> to convince management that a whole family of applications we are to
develop
> dont need the aforementioned framework

You also don't need to be careful what you ask managers for permission to
do. Tell them that paying as you go is safe. Ask for high-value _features_,
not a payroll for a very long runway.

Implement the features, under _relentless_ testing. When you deliver, and
get the next batch of features, refactoring them together with the current
ones will grow a framework, tuned to your exact topology.

-- 
  Phlip
  http://industrialxp.org/community/bin/view/Main/TestFirstUserInterfaces


0
Reply Phlip 8/17/2004 5:10:16 PM

Always start with the equivalent of "hello world" for this type of activity, or
what Phlip has called a "closed loop" in some other discussions, or what in 
XP is called a spike.

In other words, set up a web service interface that allows access to one of the
back-office services (and maybe generate one of those ASP pages as a
result). This will get a lot the basics technical issues sorted out and will 
start to give you some feedback that will help with your direction for the 
architecture.

As you continue to develop the code, I recommend developing specific 
features rather than trying to produce a generic framework up-front. That way,
you'll get to points where the features help you to determine when you
need to refactor your framework into something more general. For example,
in a recent project, we had some things working with TCP/IP. When we 
tried to get some features working with UDP/IP, we realized things were
getting complicated. This drove us to refactor our design to support
both TCP and UDP in a generic way. I think it is better to do design
this way than to try to decide these sorts of things right up-front. 

Finally, there is no reason why agile methods can't give you an estimate
of how long the project will take, i.e. "You'll get X features in Y months
for Z dollars." The only caveat is that each iteration will improve
those estimates and tell you as early as possible if things are going off
the rails.

"Chello" <ce.borremans@chello.nl> wrote in message news:<2doUc.101434$i7.39622@amsnews05.chello.com>...
> I'm trying to get an idea of how to introduce agile development (or more
> specific eXtreme programming) in a project for developing a potentially
> complex generic framework. This framework would offer functionality to:
> 
> communication via webservices
> easy (generated) extension of the webservice API
> generation of ASP.NET screens
> 
> first application of this framework would be in rather big ERP applications:
> a set of traditional multiplatform legacy backoffices need to be exposed via
> the internet.
> 
> trying to adhere to the rule: do the most complex thing first, what would be
> typical candidates for the first iterations in this example?
> 
> maybe we're too ambitious but we're also trying to convince management about
> the usefullness of an agile approach. they already commited to frequent
> functional discussions (ERP stuff) and development in iterations and the
> fact that it probably means we cannot know now what we will have in a year.
> 
> my guess is that for the framework stuff the development team themselves
> would be the customer right?
> 
> please don't tell me we don't need the framework :-( im not sure if I want
> to convince management that a whole family of applications we are to develop
> dont need the aforementioned framework
> 
> any suggestions?
> thx
> eddy
0
Reply vladimir_levin 8/17/2004 6:34:50 PM

> Always start with the equivalent of "hello world" for this type of activity, or
> what Phlip has called a "closed loop" in some other discussions, or what in 
> XP is called a spike.

Or a bridge thread:
  http://c2.com/cgi/wiki?BridgeThread

Laurent
http://bossavit.com/thoughts/
0
Reply Laurent 8/18/2004 6:28:48 AM

"Chello" <ce.borremans@chello.nl> wrote in message news:<2doUc.101434$i7.39622@amsnews05.chello.com>...
> I'm trying to get an idea of how to introduce agile development (or more
> specific eXtreme programming) in a project for developing a potentially
> complex generic framework. This framework would offer functionality to:
> 
> communication via webservices
> easy (generated) extension of the webservice API
> generation of ASP.NET screens
> 
> ...
>
> please don't tell me we don't need the framework :-( im not sure if I want
> to convince management that a whole family of applications we are to develop
> dont need the aforementioned framework

You probably do need a framework.  The problem is that you really have
no idea what services the framework should provide.  I've worked on
multiple projects where such frameworks were written in advance of any
deliverable functionality, and in all cases most of the up-front work
on the framework was wasted.  A significant portion of the
functionality wasn't needed, or required extensive redesign to meet
the needs of the application.  And when used, it turned out that the
framework code had been lightly tested, and was of poor quality.  I
would never start a development project by writing a framework.

Instead, pick the most valuable application and start writing it. 
Factor out repeated code into functions, collect related functions
into classes, collect related classes into modules.  When it becomes
more important to start another application than to continue adding
functionality to the first application, start writing the next
application.  Reuse the library code from the first application when
possible.  If the library code isn't quite right, and it won't be,
then refactor it to serve both applications.  By the time you get to
the fourth application you won't have to change the existing framework
code very much, but will probably continue adding functionality.  In
this way you will develop a truly useful framework, and you won't
waste time writing a lot of code that is never used.
0
Reply kevin 8/18/2004 5:03:05 PM

On Tue, 17 Aug 2004 14:01:34 GMT, "Chello" <ce.borremans@chello.nl>
wrote:

>I'm trying to get an idea of how to introduce agile development (or more
>specific eXtreme programming) in a project for developing a potentially
>complex generic framework. This framework would offer functionality to:
>
>communication via webservices
>easy (generated) extension of the webservice API
>generation of ASP.NET screens
>
>first application of this framework would be in rather big ERP applications:
>a set of traditional multiplatform legacy backoffices need to be exposed via
>the internet.
>
>trying to adhere to the rule: do the most complex thing first, what would be
>typical candidates for the first iterations in this example?
>
>maybe we're too ambitious but we're also trying to convince management about
>the usefullness of an agile approach. they already commited to frequent
>functional discussions (ERP stuff) and development in iterations and the
>fact that it probably means we cannot know now what we will have in a year.
>
>my guess is that for the framework stuff the development team themselves
>would be the customer right?
>
>please don't tell me we don't need the framework :-( im not sure if I want
>to convince management that a whole family of applications we are to develop
>dont need the aforementioned framework
>
>any suggestions?


Yes.  Frameworks should be developed as *part* of two or more
applications that use the framework.  You do this by starting two or
three applications in the normal XP/Agile way: Write stories, estimate
them in arbitrary points, choose high business value stories first and
implement them in very short cycles using TDD and pairing, etc.

The teams developing the applications should exchange people
frequently.  After a few iterations, it should be clear that there is
a lot of overlap between the applications.  Create a new team by
drawing a few people from each of the other application teams.  That
new team will create the framework.  The other teams will act as
customers and will feed stories.  The framework team must serve the
application teams by building generic code that implements the stories
from the application teams.  The framework team will have to negotiate
the stories with the teams so that a generic solution can be achieved.

If you don't have enough people to populate all these teams, then use
one team.  This one team will change hats each iteration.  The first
iteration they'll work on app 1.  The second iteration they'll work on
app 2.  They'll keep doing this until they learn enough to see the
overlap in the apps.  Then they'll start working on the framework one
iteration in N, and continue working on the apps during the others.


-----
Robert C. Martin (Uncle Bob)
Object Mentor Inc.
unclebob @ objectmentor . com
800-338-6716

"The aim of science is not to open the door to infinite wisdom, 
 but to set a limit to infinite error."
    -- Bertolt Brecht, Life of Galileo
0
Reply Robert 8/20/2004 11:07:11 PM

On Tue, 17 Aug 2004 15:02:33 GMT, "Phlip" <phlip_cpp@yahoo.com> wrote:

>Chello wrote:
>
>> trying to adhere to the rule: do the most complex thing first
>
>Yeeek! Where did _that_ rule come from???

It's pretty common.  I think Grady put it in his books.  

What you really want is highest business value first.



-----
Robert C. Martin (Uncle Bob)
Object Mentor Inc.
unclebob @ objectmentor . com
800-338-6716

"The aim of science is not to open the door to infinite wisdom, 
 but to set a limit to infinite error."
    -- Bertolt Brecht, Life of Galileo
0
Reply Robert 8/20/2004 11:08:02 PM

Robert C. Martin wrote:

> Phlip wrote:
>
> >Chello wrote:
> >
> >> trying to adhere to the rule: do the most complex thing first
> >
> >Yeeek! Where did _that_ rule come from???
>
> It's pretty common.  I think Grady put it in his books.

I thought the iterative-but-not-extreme camp sorted things by risk, not
complexity. Meaning start with the things whose potential complexity must be
defeated, not the low-risk high-complexity things.

Probably the same difference...

> What you really want is highest business value first.

Well, you certainly have the lobes for business, O Grand Nagus of Agility.

[And you owe me 2.5 strips of gold-pressed latinum for that accolade,
indexed at 6%;]

-- 
  Phlip
  http://industrialxp.org/community/bin/view/Main/TestFirstUserInterfaces


0
Reply Phlip 8/21/2004 3:42:27 AM

Robert C. Martin wrote:

> The teams developing the applications should exchange people
> frequently.  After a few iterations, it should be clear that there is
> a lot of overlap between the applications.  Create a new team by
> drawing a few people from each of the other application teams.  That
> new team will create the framework.  The other teams will act as
> customers and will feed stories.

I'm aware that agility frees up resources, but I did not get the idea they a
VW Beetle with 30 clowns inside.

(I _did_ get the idea that a very few people had been given the marching
order: "Go build a framework, then we'l do something with it...")

-- 
  Phlip
  http://industrialxp.org/community/bin/view/Main/TestFirstUserInterfaces



0
Reply Phlip 8/21/2004 3:51:23 AM
comp.extreme-programming 1463 articles. 2 followers. Post

10 Replies
164 Views

Similar Articles

[PageSpeed] 45


  • Permalink
  • submit to reddit
  • Email
  • Follow


Reply:

Similar Artilces:

RE:Iteration planning for complex frameworks
Many thanks to everybody who answered my question. Im really quite astonished to the number of answers I got and more important they all seem to come from the same line of thinking. Even Ron Jeffries took the time to answer this! It made me land back on earth again. Thx, Eddy (Chello) On Fri, 20 Aug 2004 19:58:14 GMT, "Chello" <ce.borremans@chello.nl> wrote: > Even Ron Jeffries took the time to >answer this! There are those who do not consider that to be a good thing. :) -- Ron Jeffries www.XProgramming.com I'm giving the best advice I have. You get to decid...

RE:Iteration planning for complex frameworks
Many thanks to everybody who answered my question. Im really quite astonished to the number of answers I got and more important they all seem to come from the same line of thinking. Even Ron Jeffries took the time to answer this! It made me land back on earth again. Thx, Eddy (Chello) On Fri, 20 Aug 2004 19:58:14 GMT, "Chello" <ce.borremans@chello.nl> wrote: > Even Ron Jeffries took the time to >answer this! There are those who do not consider that to be a good thing. :) -- Ron Jeffries www.XProgramming.com I'm giving the best advice I have. You get to decid...

Iteration planning
I'm new to XP and I've just finished reading "Extreme Programming Pocket Guide" by Chromatic. I have a couple of questions about planning. 1. When estimating cost and risk of a story, do I break it into tasks first or do I give a rough estimate and then a detail task based estimate when it's assigned to the next iteration? 2. Do I estimate the cost and risk of very story before first iteration so that the customer can then prioritise the story and create an iteration schedule? Chris <chris@zenmgt.com> wrote in message news:opr04l8a1m6gy8po@reader.news.te...

complex iteration
I need an iteration method to solve a black box model for a non-linear problem. The input is a complex number, basically z = x + i*y. The model gives an output S = a + i*b. I need some kind of feedback from the output to make the input value to converge to the right value. The right output should be S = a_0 + i*b_0. ...

Iteration planning
I'm new to XP and I've just finished reading "Extreme Programming Pocket Guide" by Chromatic. I have a couple of questions about planning. 1. When estimating cost and risk of a story, do I break it into tasks first or do I give a rough estimate and then a detail task based estimate when it's assigned to the next iteration? 2. Do I estimate the cost and risk of very story before first iteration so that the customer can then prioritise the story and create an iteration schedule? Chris <chris@zenmgt.com> wrote in message news:opr04l8a1m6gy8po@reader.news.te...

Release planning and Iteration timing
I am new to XP but will use XP in my startup company. I have read "XP Applied", 'XP Installed", and "XP Refactored: The case against XP". My question is in regards to the timing of releases and iterations. My impression was that the length of releases and iterations were fixed. Let's say a 2 month release and 2 week iterations. If we fit 4 iterations into each release there is no time for release planning. So I can only assume that there can only be 3 iterations in this case. But the extra 2 weeks seems too long for just release planning. Also it seems that s...

Framework for iterating over product types?
Background: I have some structs containing std::strings and std::vectors of other structs containing std::strings and std::vectors of .... I'd like to make a std::vector of these. Unfortunately the overhead of the useless copies made each time the vector is resized is too large for me to ignore. I know that rvalue references fix this problem, but I don't think they'll be widely available for years and I need something that works now. There's no sensible value I can pass to reserve(). vector<shared_ptr> is faster, but the per-item allocation overhead is still signif...

Web Frameworks Excessive Complexity
Cyclomatic (or conditional) complexity is a metric used to indicate the com= plexity of a source code. Excessive complexity is something that is beyond = recommended=20 level of 10 (threshold that points to the fact the source code is too=20 complex and refactoring is suggested). Here is a list of web frameworks exa= mined: bottle=2C cherrypy=2C circuits=2C=20 django=2C flask=2C pyramid=2C pysi=2C tornado=2C turbogears=2C web.py=2C we= b2py and=20 wheezy.web. You can read more here: http://mindref.blogspot.com/2012/11/python-web-excessive-complexity.html Thanks. Comments ...

Complex mapping re-iterator
Want to link this up with the colored-modulus-surface plot. Wish there were some way to get more convincing color blending. Manipulate[ Show[ Table[ ParametricPlot[ { Through[ Nest[#^2 - (a + b I) &, #, n] & /@ {Re, Im}[ u Exp[(- 15 \[Degree] + (k + v) 30 \[Degree]) I]]] }, {u, 0, 1}, {v, 0, 1}, Mesh -> None, PlotStyle -> {Opacity[opac], Hue[k/12, 1, 1]}, BoundaryStyle -> None ], {k, k0, k1} ], PlotRange -> All ], {{a, 0.1}, -4, 4, 0.125}, {{b, 0.1}, -4, 4, 0.125}, {{n, 1}, 0, 20,...

Complexity of Propositional STRIPS Planning?
Hello, I've been looking at the complexity of the Propositional STRIPS planning problem, which informally is the problem of finding a sequence of state transition operators to move the system from an initial state to a goal state. Bylander has proven that the complexity of the PLANSAT problem (which asks the question "does a plan exist given the initial state and goal") and the PLANMIN problem ("does a plan exist of size less than or equal to a value k given the initial state and goal") are PSPACE-Complete. (I should say that complexity is measured based on the...

Release planning and Iteration timing
I am new to XP but will use XP in my startup company. I have read "XP Applied", 'XP Installed", and "XP Refactored: The case against XP". My question is in regards to the timing of releases and iterations. My impression was that the length of releases and iterations were fixed. Let's say a 2 month release and 2 week iterations. If we fit 4 iterations into each release there is no time for release planning. So I can only assume that there can only be 3 iterations in this case. But the extra 2 weeks seems too long for just release planning. Also it seems that s...

complex linear system iterative solving
Hello! About solving a huge system of linear equations iteratively. A*x=b I want to use bigger matrix, than is possible to solve directly with matlab. The matrix A has complex values. And PCG method tends to converge VERY slowly with complex matrices. Can anyone suggest an iterative method to use and what preconditioner would be good? (diagonally dominant symmetric, non-Hermitian). Thanks ...

Re: Release planning and Iteration timing
> But the book "XP Refactored" mysteriously forgot to > mention that Google.com uses XP Phlip, could you give more details on XP used at Google / share some link detailing that? Thanks Wass liwass wrote: > > But the book "XP Refactored" mysteriously forgot to > > mention that Google.com uses XP > Phlip, could you give more details on XP used at Google / share some > link detailing that? Ee-gee. Hit this: http://www.google.com/search?q=extreme+programming Note the text ad on the right is for a job at Google. The Coach there posted a few weeks ...

Re: Release planning and Iteration timing
> But the book "XP Refactored" mysteriously forgot to > mention that Google.com uses XP Phlip, could you give more details on XP used at Google / share some link detailing that? Thanks Wass liwass wrote: > > But the book "XP Refactored" mysteriously forgot to > > mention that Google.com uses XP > Phlip, could you give more details on XP used at Google / share some > link detailing that? Ee-gee. Hit this: http://www.google.com/search?q=extreme+programming Note the text ad on the right is for a job at Google. The Coach there posted a few weeks ...

ANN: Plansim, a framework for building planning agents
Plansim is a C++ framework aimed to the development of efficient planner agents based on heuristic forward search, that use discrete event simulators as the model for the agent's environment. It is an open source library licensed under LGPL. For more info check the Plansim homepage at http://plansim.sourceforge.net/ Best regards, Frederico Liporace Departamento de Informatica - PUC Rio [ comp.ai is moderated. To submit, just post and be patient, or if ] [ that fails mail your article to <comp-ai@moderators.isc.org>, and ] [ ask your news administrator to fix the problems with yo...

std::tr1::unordered_set and the complexity of iterator::operator++
I'm reading the documentation for std::tr1 hashed containers presented at http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2003/n1456.html and found that both single- and double-linked lists are allowed. On single-linked lists implementations I've taken a look at, like for instance that of GCC, iterator::operator++ complexity is on average equal to 1/f where f is the load factor of the hash table (no of elements / bucket count.) Since the bucket count typically grows by a constant factor G on each rehashing operation, it is simple to see that, for an ever increasing n...

Building complex MacOS X frameworks with CW ?
Hi I'm using CW Pro 8 for MacOS X and would like to build a framework bundle which would contain header files and dynamic libraries, such as the OpenGL framework shipped with the system. Here I'm talking about the contents of the bundle itself, not the CW project ! For instance, the OpenGL framework has the following structure: OpenGL.framework (D) + Versions (D) + A (D) + OpenGL (F) + Headers (D) (contains gl.h, glext.h, etc...) + Libraries (D) (contains libGL.dylib, libGLU.dylib, etc...) + Resources (D) (contains info.plist...

Planning to Build Complex Wireless SoC...Anybody interested??
Hi, this is ranbir here. my client is plannin to build complex SoC for their CDMA based mobile handsets. their design centre will be based in Bangalore, India. they are looking for an entire team for that purpose. we want frontend design engineer, backend, physical design, verification, memory design, rtl architects and everyting else. anybody from any nationlity are welcome to apply. Anybody interested?? reachranbir@gmail.com wrote: > Hi, > this is ranbir here. my client is plannin to build complex SoC for > their CDMA based mobile handsets. their design centre will be based in...

java.util.LinkedList.iterator().remove() time complexity
I would expect that in a linked list, an element can be added or removed in constant time, assuming that the iterator is already in the right position. However, the Javadoc for JDK 1.6 says the following: a) the iterator method of a LinkedList (defined in AbstractSequentialList) merely returns a list iterator over the list. b) the remove() and set(Object) methods in ListIterator are not defined in terms of the cursor position; they are defined to operate on the last element returned by a call to next() or previous(). I am not sure how to understand that. Does it mean that rem...

std::binary_search(), iterator to the found element and time complexity
Hi, std::binary_search() takes logarithmic time on (sorted) container, but returns bool, not iterator to the found element. std::find() returns iterator to the found element, but takes linear time. Is there any way to get iterator to the found element on sorted container in logarithmic time? Alex Vinokur Alex Vinokur schrieb: > Hi, > > std::binary_search() takes logarithmic time on (sorted) container, but > returns bool, not iterator to the found element. > > std::find() returns iterator to the found element, but takes linear > time. > > Is there any way to ...

Wealth Field - Supplement to Building Administrative Framework
Municipal Securities - Mortgage-Backed Notes Giuen Department of Development (G.D.D.) Chairman Indicates 2008-10-01 =91Solid organization=92s core=92, yet at the time when competition at a same time lead to greater impact for set goal. When these are factors seen in economy, then it is of importance to sight differences for both management and investment accountabilities. Within differences affecting planning rapidly, it is then more important for keep set development goal, but also, with structural change for unexpected risk. Such risk management can exist for intensified analysis not only...

How complex is complex?
When we say readability counts over complexity, how do we define what level of complexity is ok? For example: Say I have dict a = {'a': 2, 'c': 4, 'b': 3} I want to increment the values by 1 for all keys in the dictionary. So, should we do: >>> for key in a: .... a[key] = a[key] + 1 or is it Ok to have code like: dict(map(lambda key: (key, a[key] + 1), a)) How do we decide whether a level of complexity is Ok or not? Kottiyath: > How do we decide whether a level of complexity is Ok or not? I don't understand your question, but here are better ways to...

Complex Complex
Hello! I thought I'd try out one more pitiful pun with the word "complex"! I've been collecting now, with the great help of Bill Lindholm, for about the past year. I've decided for some unknown reason that I'd like to get a specimen of each type of 90/95/500 processor complex. Right now I have Types 0, 1, 3, and 4. I'm missing a type 2. Does anyone have a type 2 to spare for a reasonabily good deal? It's fun playing around with these things in my Model 95s. Also-- I'm asking just to see-- does anyone know where I may find a Model ...