Hallo,
ich würde bei meinen Bastelrojekten gerne mal einen Überblick über den
zeitlichen Aufwand bekommen.
Gibt es Programme, die messen können, wie lange ein anderes Programm
z.B. Eclipse / AVR Studio / Eagle geöffnet ist und nach dem Beenden des
Programms die Zeit in eine Log-Datei schreiben?
Alternativ könnte man so etwas bestimmt auch über eine Batch-Datei
lösen.
-> Aufruf des Batch-Skriptes startet Timer (loggt Anfangszeit) und
startet das gewünschte Programm. Anschließend wird gepollt, ob das
Programm noch läuft und wenn es beendet wurde wird die vergangene Zeit
gespeichert.
Es muss nicht wirklich genau sein. Aber um den Aufwand bei zukünftigen
Projekten abzuschätzen ist ja bestimmt ganz hilfreich, wenn man
Vergleichswerte aus abgeschlossenen Projekten hat. Außerdem könnte es
ganz interessant sein, wenn mal wieder für jemand Andern "schnell" was
zusammengefrickelt werden soll.
Macht ihr soetwas? Falls ja wie? Alternative wäre natürlich das
Notizbuch :)
Viele Grüße
Jan
Wie wäre es dafür ein AVR-Projekt zu starten ;-)
Jetzt mal im Ernst: Es gibt entsprechende Apps für genau diesen Zweck.
Ich habe auch mal gesehen, dass jemand eine Art Makro für eine Textdatei
hatte (hat Datum + Uhrzeit des öffnens geloggt).
Gruß Max
Ich verwende dafür ManicTime. Es speichert einfach den Titel jedes
fokusierten Programms, man kann damit also auch z.B. die Browserhistory
nachvollziehen, wenn die Webseite im Programmtitel steht.
Literaturtip zum Thema:
ISBN 9780201006506 "The Mythical Man-month: Essays on Software
Engineering" bereits 1975 erschienen. Neuauflage 1995 ISBN 9780201835953
Hab das mal gelesen, enthält Aussagen der Art "je mehr Leute dran
arbeiten umso länger dauert es"
Jan schrieb:> ich würde bei meinen Bastelrojekten gerne mal einen Überblick
gute Idee, wir machen das bei unseren Projekten auch schon seit langem,
mit sehr interessanten Ergbnissen.
> Gibt es Programme, die messen können, wie lange ein anderes Programm> z.B. Eclipse / AVR Studio / Eagle geöffnet ist
Wenn die Programme auf dem Server liegen, wird bei uns die
Lizenzblockzeit gemessen. Das verwenden wir aber nicht, weil es sich
gezeigt hat, dass das kein Kriterium ist.
Was man daraus aber ableiten kann, ist, wieviele Lizenzen man
statistisch im Mittel und im Maxbereich pro Entwickler benötigt. Die
Zahl schwankt zwischen 0,3 und 1,3.
Dafür nutze ich ToDoList. Ist eigentlich ein Freeware Programme zur
To-Do-Listen Verwaltung. Dort dann jeweils ein Eintrag für jedes Projekt
und dann kann man immer noch Untereinträge für beispielsweise Software,
Layout etc eintragen.
Dann einfach den Eintrag "Software" auswählen unten auf "Zeit messen"
und nebenbei laufen lassen. Einfach und genial.
Link zur Software: http://www.abstractspoon.com/tdl_resources.html
Jan schrieb:> -> Aufruf des Batch-Skriptes startet Timer (loggt Anfangszeit) und> startet das gewünschte Programm. Anschließend wird gepollt, ob das> Programm noch läuft und wenn es beendet wurde wird die vergangene Zeit> gespeichert.
Warum so kompliziert? Die Shell wartet doch automatisch auf Beendigung
des Programms, wenn man nichts anderes sagt. Zur Laufzeitmessung nimmst
du einfach das time(1)-Programm und schreibst dessen Output (anhängend)
in eine beliebige Datei. Diese Datei wertest du dann aus, wenn du wissen
willst, wie lange das Programm geöffnet war. Wenn dein time sowas hat,
kannst du auch das entsprechende Flag zum Wählen des Output-Formats
nutzen, das macht die Aufbereitung vielleicht etwas einfacher. Geht aber
auch ohne.
Damit du jetzt nicht vergisst, dein Eclipse o.ä. über das angelegte
Skript zu starten, packst du es unter gleichem Name in ein Verzeichnis,
das im Suchpfad vor dem echten Eclipse liegt.
Konkret meine ich das z.B. so (für GNU time):
/usr/bin/time -f %E -ao /pfad/zu/logdatei /usr/bin/eclipse
Wenn du das in ein Shellskript packst und Eclipse darüber aufrufst, wird
die Laufzeit jedes Mal im Format Stunden:Minuten:Sekunden in einer neuen
Zeile an die Logdatei angehängt. Wenn du %e als Format nimmst, bekommst
du nur Sekunden, das ist vielleicht besser.
Wenn du das jetzt noch 'eclipse' nennst und in ein Verzeichnis tust, das
vor dem echten Eclipse im Pfad ist, dürftest du auch nicht vergessen,
Eclipse über das Skript aufzurufen.
Wichtig ist, dass du nicht den in der Shell integrierten time-Befehl
benutzt, da dieser die erweiterten Optionen für Format und Outputdatei
in der Regel nicht kennt. Einfach mit vollem Pfad (/usr/bin/time o.ä.)
aufrufen, anstatt nur mit 'time'.
Wenn du nun wissen willst, wie lange du insgesamt mit Eclipse verbracht
hast, summierst du einfach die Zeilen der Logdatei.
>Gibt es Programme, die messen können, wie lange ein anderes Programm
z.B. Eclipse / AVR Studio / Eagle geöffnet ist und nach dem Beenden des
Programms die Zeit in eine Log-Datei schreiben?
Dann gibt es Leute, wie mich, die haben eine Vielzahl von Programmen
dauernd offen und die (fast)nie booten. Ich seh grad, das letzte Mal hab
ich Ende Oktober gebootet, das waere dann vor 4 Monaten. Dazwischen
immer Hibernate.