Testers please for CodeInvestigator

2012-11-18 Thread martien . friedeman
I have released version 3 of CodeInvestigator.

It is a web-application that allows you to visualize the flow of data through 
your program.
It is intended as a way to easily learn about how your program does its thing.

Softoxi has done a review of the previous version:
http://www.softoxi.com/codeinvestigator.html

Version 3.0.0 can be downloaded from sourceforge:
http://sourceforge.net/project/showfiles.php?group_id=183942

I would be interested in bugs and things that you think should be included.
The 'wouldn't it be nice if ...' features.

Thank you!
Martien Friedeman
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-14 Thread Don Taylor
martien friedeman wrote:
 I have written this tool that allows you to look at runtime data and  
 code at the same time.
 And now I need people to test it.
 
 The easiest way to see what I mean is to look at some videos:
 http://codeinvestigator.googlepages.com/codeinvestigator_videos
 
 It requires Apache and Sqlite.
 
 It works for me with a Firefox browser on Linux. 
   

ODB, the Omniscient Debugger, for Java does the same sort of thing and more.

http://www.lambdacs.com/debugger/ODBDescription.html

I would love to have one of these for Python.

Don.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-14 Thread Martien Friedeman
That's amazing!
We had the same idea.
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-13 Thread stef
martien friedeman wrote:
 I have written this tool that allows you to look at runtime data and 
 code at the same time.
 And now I need people to test it.

 The easiest way to see what I mean is to look at some videos:
 http://codeinvestigator.googlepages.com/codeinvestigator_videos

 It requires Apache and Sqlite.

 It works for me with a Firefox browser on Linux. 
Great idea !
Especially for newbies, so you've to make sure it's always in the first 
starters package.

As most modern code-editors, already support context sensitive popup's,
can't you make a module that can be added to any editor ?

a few other suggestions
- for large datasets, display only the corner values
- for loops, also only display the corner values
- to decrease datasize enormuous, limit the functionality to a piece of 
code selected by the user
- get rid of Apache and SQLite, too complicated for newbies

keep on the good work,
cheers,
Stef Mientki
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-13 Thread fridrikm
On Feb 13, 1:38 am, martien friedeman [EMAIL PROTECTED]
wrote:
 I have written this tool that allows you to look at runtime data and  
 code at the same time.
 And now I need people to test it.

 The easiest way to see what I mean is to look at some 
 videos:http://codeinvestigator.googlepages.com/codeinvestigator_videos

 It requires Apache and Sqlite.

 It works for me with a Firefox browser on Linux.

I'm absolutely stunned.  This is a great idea, especially because we
all hate learning other people's code, and this makes the process so
much easier.

Got some exams coming up this week, but I'll do some testing in the
weekend.

I'd like to suggest one thing though.  When evaluating conditional
statements, it would be very useful to see what else meant in terms
of the statement itself, for example:

if foo == 1:
# Instead of showing true this would show foo == 1
elif foo == 2:
# This would show foo == 2
else:
# Instead of showing false. Here comes the tricky part.  This
should show the opposite of foo == 1, as well as the following elif
statements.  So in this case, the tab could show not (foo == 1) |
(foo == 2).

The reason for why showing the negated else in the header (looking for
a better word, this refers to the header shown when you click
something) would be helpful is because it helps keep track of what
statements are being evaluated, since False gives no information on
what statment is being tested and if the code is long, you have to
scroll way up to take a look at the if statement, so it will help a
lot with complex code.

While this is not hard to implement (unless I'm missing something),
the implementation has some problems, because conditional statements
can become very long, the else statement's tab could show an
exceptionally long statement whereas showing just False keeps it at
a fair length.

I might be missing something in this suggestion though - if so, please
set me straight.

At any rate, I think you've done a great job on this.  When I get
around to testing it this weekend I'll post the results on the
project's SourceForge forums.

Regards,
Friðrik Már

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-13 Thread azrael
it would be nice when someone would paste some instructions or
tutorial how to bound it all together. where to paste the file. a
dummy tutorial if possible.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-13 Thread Martien Friedeman
Thanks for getting involved. And kind remarks.

The labeling of 'false' and 'true' is just for shortness sake.
The condition itself could be quite a mess and span several lines. You
mentioned that.
The only reason I like to display it, is to show whether a
block of coding, the colored bit, is performed or not.

Without that you would find out anyway; nothing becomes underlined
when you move your mouse in that area: Nothing in that area is
interactive. Because nothing happened there.

Even when the condition itself shows on the tab, not just the outcome, the
user would still need to scroll up to that tab if it was not visible. 

The user interface is in HTML, maybe a tooltip when one moves the cursor
over a colored condition block could show up that shows the condition and
its value.
I hate them tooltips though. They make the whole interface so jumpy.

More work in that area needed then.
-- 
http://mail.python.org/mailman/listinfo/python-list


RE: Testers please

2007-02-13 Thread Sells, Fred
cool product, I'll test depending on schedule at the time.

one (more) suggestion (from those of us who arn't doing the work ;) is to
put this in eclipse, rather than apache, since many developers work with it.
Please no IDE wars, I like emacs too, but when I'm trying to teach to
newbies I use elcipse.

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
Behalf Of martien friedeman
Sent: Monday, February 12, 2007 8:38 PM
To: python-list@python.org
Subject: Testers please


I have written this tool that allows you to look at runtime data and  
code at the same time.
And now I need people to test it.

The easiest way to see what I mean is to look at some videos:
http://codeinvestigator.googlepages.com/codeinvestigator_videos

It requires Apache and Sqlite.

It works for me with a Firefox browser on Linux. 
  
-- 
http://mail.python.org/mailman/listinfo/python-list
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-13 Thread Martien Friedeman
Thanks Stef!

I looked at that area of storing large structures. That would seriously
make the whole thing much more complicated.

Say you have object 'foo' and it has lots of attributes.

If you're only accessing foo.length in the statement 

'if foo.length  12:'

why should I store everything about foo? Its 'length' is the only
attribute accessed, therefore I only store its 'length'. 
And therefore you can not click on 'foo', only on 'length'. 
No video shows such an example though. 

On the other hand if you had the statement

'if foo:'

then 'foo' would be able to be clicked, and it would say '__main__.Foo
instance ... etc. The usual. No attributes though.

The interface is web based; I was going to make it as universal as
possible. The web server is required to do the Ajax thing and display
pages. Makes it harder to install too, unfortunately. 

The size of the 'recording' is a major drawback, it was clearly not meant
to record the processing of millions of records.

I need to find a way to specify the area in the code that needs recording.

Thanks for the suggestions.
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-13 Thread Scott David Daniels
Martien Friedeman wrote:
 The size of the 'recording' is a major drawback, it was clearly not meant
 to record the processing of millions of records.
 
 I need to find a way to specify the area in the code that needs recording.

Use something like zlib and write a compressed log -- especially
with logs you are working with highly compressible data.  The gzip
module can be used to easily write to it on the fly (incrementally).
You'll find with very little effort you'll get very good compression.
Recently I saw a set of standard logs, not designed for any compression,
showing a factor of 9 compression -- that is, I was seeing less than
a single bit required per byte in the original.

-- 
--Scott David Daniels
[EMAIL PROTECTED]
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-13 Thread Martien Friedeman
Thanks for that for that Scott.
Most of hassle is storing the program flow.

For example:
Iteration 3 of the loop starting on line 12 has itself a loop on line 15
that has 14 iterations. 
Iteration 4 of the loop starting on line 12 has a completely different set
of iterations for the loop on line 15. If at all(!)

All that is stored in a tree which I pickle and write to the database.

Massive program runs will create large trees.
And this pickling is expensive.
-- 
http://mail.python.org/mailman/listinfo/python-list


Testers please

2007-02-12 Thread martien friedeman
I have written this tool that allows you to look at runtime data and  
code at the same time.
And now I need people to test it.

The easiest way to see what I mean is to look at some videos:
http://codeinvestigator.googlepages.com/codeinvestigator_videos

It requires Apache and Sqlite.

It works for me with a Firefox browser on Linux. 
  
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-12 Thread azrael
I took a first look on the video. Amazing. I love it. You got a tester

good job, man

// but one thing, why not zope and postgre?


martien friedeman je napisao/la:
 I have written this tool that allows you to look at runtime data and
 code at the same time.
 And now I need people to test it.

 The easiest way to see what I mean is to look at some videos:
 http://codeinvestigator.googlepages.com/codeinvestigator_videos

 It requires Apache and Sqlite.

 It works for me with a Firefox browser on Linux.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Testers please

2007-02-12 Thread James Stroud
martien friedeman wrote:
 I have written this tool that allows you to look at runtime data and  
 code at the same time.
 And now I need people to test it.
 
 The easiest way to see what I mean is to look at some videos:
 http://codeinvestigator.googlepages.com/codeinvestigator_videos
 
 It requires Apache and Sqlite.
 
 It works for me with a Firefox browser on Linux.  

Amazing!
-- 
http://mail.python.org/mailman/listinfo/python-list