notes cleanup
This commit is contained in:
parent
d5f8c90dd4
commit
6b7f458d02
278
NOTES
278
NOTES
@ -1,5 +1,15 @@
|
|||||||
hledger project notes
|
hledger project notes
|
||||||
|
|
||||||
|
* principles
|
||||||
|
** We aim to make reliable, maintainable, usable, useful software, sustainably.
|
||||||
|
** "bugs" are errors, as in the programmers messed up
|
||||||
|
** packaging before docs before tests before fixes before refactoring before features
|
||||||
|
** automate
|
||||||
|
** measure
|
||||||
|
** test continuously, test everything
|
||||||
|
** less is more
|
||||||
|
** pair programming
|
||||||
|
** inspiration
|
||||||
"...simplicity of design was the most essential, guiding principle.
|
"...simplicity of design was the most essential, guiding principle.
|
||||||
Clarity of concepts, economy of features, efficiency and reliability of
|
Clarity of concepts, economy of features, efficiency and reliability of
|
||||||
implementations were its consequences." --Niklaus Wirth
|
implementations were its consequences." --Niklaus Wirth
|
||||||
@ -8,40 +18,30 @@ implementations were its consequences." --Niklaus Wirth
|
|||||||
skull. He therefore approaches his task with full humility, and avoids
|
skull. He therefore approaches his task with full humility, and avoids
|
||||||
clever tricks like the plague." --Edsger Dijkstra
|
clever tricks like the plague." --Edsger Dijkstra
|
||||||
|
|
||||||
We aim to make reliable, maintainable, usable software, sustainably.
|
|
||||||
- pair programming
|
|
||||||
- test-driven development
|
|
||||||
- fixes, docs, packaging, testing before features
|
|
||||||
- "bugs" are "errors", as in "the programmer messed up"
|
|
||||||
- test continuously and thoroughly (code, docs, speed, memory, release tests)
|
|
||||||
- less is more
|
|
||||||
|
|
||||||
* to do
|
* to do
|
||||||
** errors
|
** packaging, installability
|
||||||
*** account name eliding and layout varies between commands and from ledger
|
*** easier installation
|
||||||
*** vty: hledger ui dies showing non-ascii chars in commodity symbol
|
**** on all platforms
|
||||||
*** vty: hledger ui shows junk in gnome terminal
|
***** binary build/publish process
|
||||||
** testing
|
***** reduce dependencies
|
||||||
*** test for robust ledger file parsing
|
***** split packages ?
|
||||||
**** test all ledger file format features
|
**** on linux
|
||||||
**** clarify hledgerisms in file format - that hledger can read but ledger can't
|
***** keep up with debian/ubuntu haskell packagers
|
||||||
**** run ledger 3 baseline tests
|
**** on mac
|
||||||
*** --compare (xml?) output with ledger's ?
|
***** easy data entry, then
|
||||||
*** build with -Wall and anything else useful
|
***** easy installer
|
||||||
*** build with multiple ghc versions
|
***** easy startup
|
||||||
*** cabal test
|
**** on windows
|
||||||
*** release tests
|
***** easy data entry, then
|
||||||
**** cabal install with:
|
***** easy installer
|
||||||
***** ghc 6.8
|
***** easy startup
|
||||||
***** ghc 6.10.x
|
** documentation, marketing
|
||||||
***** windows
|
*** add missing
|
||||||
***** linux
|
**** hledger/ledger feature matrix
|
||||||
***** macos
|
**** regular-user home page
|
||||||
***** no flags
|
*** reduce
|
||||||
***** happs flag
|
*** better screenshots/images
|
||||||
***** vty flag
|
|
||||||
** docs/marketing/packaging
|
|
||||||
*** streamline - less is more
|
|
||||||
*** automate
|
*** automate
|
||||||
**** keep blurbs in sync
|
**** keep blurbs in sync
|
||||||
***** README file
|
***** README file
|
||||||
@ -52,13 +52,74 @@ We aim to make reliable, maintainable, usable software, sustainably.
|
|||||||
***** gmane description
|
***** gmane description
|
||||||
***** darcsweb description
|
***** darcsweb description
|
||||||
**** keep Options.hs and README option list in sync
|
**** keep Options.hs and README option list in sync
|
||||||
**** discover commands for --help
|
**** discovering commands for --help
|
||||||
**** accouncements
|
**** announcements
|
||||||
*** document smart dates, period expressions, display expressions
|
*** liveness
|
||||||
|
**** show feeds on site ?
|
||||||
|
***** commits (darcsweb)
|
||||||
|
**** weekly repo activity summary on list
|
||||||
|
**** available feeds
|
||||||
|
*** screencasts
|
||||||
|
**** intro
|
||||||
|
***** intro to hledger
|
||||||
|
****** place in the world
|
||||||
|
****** basic installation
|
||||||
|
****** quick demo
|
||||||
|
****** where to go from here
|
||||||
|
***** installing hledger on windows
|
||||||
|
***** installing hledger on mac
|
||||||
|
***** installing hledger on unix
|
||||||
|
***** accessing hledger's support forums
|
||||||
|
****** website
|
||||||
|
****** mail list
|
||||||
|
****** irc channel
|
||||||
|
***** reporting a hledger bug
|
||||||
|
**** using
|
||||||
|
***** income/expense tracking
|
||||||
|
***** time tracking
|
||||||
|
***** downloading bank data
|
||||||
|
***** reconciling with bank statement
|
||||||
|
***** see time reports by day/week/month/project
|
||||||
|
***** get accurate numbers for client billing and tax returns
|
||||||
|
***** find unpaid invoices
|
||||||
|
**** developing
|
||||||
|
***** intro to hledger development
|
||||||
|
***** testing hleder
|
||||||
|
***** documenting hledger
|
||||||
|
***** a hledger coding example
|
||||||
|
***** a tour of hledger's code
|
||||||
|
**** ledger cooperation
|
||||||
|
*** developer docs
|
||||||
|
**** internal api docs
|
||||||
|
**** external api docs
|
||||||
|
**** DEVGUIDE
|
||||||
|
***** How to do anything that needs doing in the hledger project.
|
||||||
|
****** website & documentation
|
||||||
|
******* overview of hledger docs
|
||||||
|
******* how the site is built
|
||||||
|
******* convenience urls
|
||||||
|
list.hledger.org - mail list
|
||||||
|
bugs.hledger.org - issue tracker
|
||||||
|
bugs.hledger.org/1 - go to specific issue
|
||||||
|
bugs.hledger.org/new - create a new issue
|
||||||
|
hledger.org/{list,bugs}/* also works
|
||||||
|
|
||||||
|
****** issue tracking
|
||||||
|
****** testing
|
||||||
|
****** coding
|
||||||
|
****** funding process
|
||||||
|
***** reference
|
||||||
|
****** unsafe things which may fail at runtime
|
||||||
|
******* incomplete pattern matching
|
||||||
|
******* error
|
||||||
|
******* printf
|
||||||
|
**** project notes
|
||||||
|
*** presenting/live demos
|
||||||
*** develop funding process
|
*** develop funding process
|
||||||
**** license change ?
|
**** license change ?
|
||||||
**** donate button, see chimoo guy
|
**** donate button, see chimoo guy
|
||||||
**** funding document 2009/01
|
**** funding document 2009/01
|
||||||
|
***** text
|
||||||
=======
|
=======
|
||||||
funding
|
funding
|
||||||
=======
|
=======
|
||||||
@ -251,77 +312,64 @@ competitors/fellow niche inhabitants
|
|||||||
* ...
|
* ...
|
||||||
|
|
||||||
***** responses
|
***** responses
|
||||||
***** albino
|
****** albino
|
||||||
have you considered talking to business who hate their financial sw and going from there
|
have you considered talking to business who hate their financial sw and going from there
|
||||||
***** gwern
|
****** gwern
|
||||||
most haskellers have never heard of hledger, sounds arrogant or hubristic to talk of charging for it
|
most haskellers have never heard of hledger, sounds arrogant or hubristic to talk of charging for it
|
||||||
|
|
||||||
**** qooxledger
|
**** home edition
|
||||||
*** better screenshots
|
** testing
|
||||||
*** screencasts
|
*** documentation
|
||||||
*** developer docs
|
**** site up, current
|
||||||
**** style guide
|
**** demo up, current
|
||||||
***** see above
|
**** haddock
|
||||||
**** unsafe things which may fail at runtime
|
**** doctests
|
||||||
***** incomplete pattern matching
|
*** unit
|
||||||
***** error
|
**** hunit
|
||||||
***** printf
|
**** quickcheck
|
||||||
*** cabal haddock
|
**** easier unit test development
|
||||||
*** liveness
|
*** functional
|
||||||
**** show feeds on site ?
|
**** ledger file parsing tests
|
||||||
***** commits (darcsweb)
|
***** test all ledger file format features
|
||||||
**** weekly repo activity summary on list
|
***** clarify hledgerisms in file format - that hledger can read but ledger can't
|
||||||
**** available feeds
|
**** ledger 3 baseline tests
|
||||||
*** make installation easier
|
**** auto-compare xml output with ledger's ?
|
||||||
**** on all platforms
|
**** allow multiple tests in .test ?
|
||||||
***** set up binary publishing
|
*** performance
|
||||||
***** reduce dependencies
|
**** speed, benchmark tests
|
||||||
***** split packages ?
|
**** memory usage
|
||||||
**** on linux
|
*** build & packaging
|
||||||
***** debian
|
**** use -Wall and anything else useful
|
||||||
***** ubuntu
|
**** build with multiple ghc versions
|
||||||
**** on mac
|
**** cabal test
|
||||||
***** ports
|
**** hackage upload
|
||||||
***** binary
|
**** cabal install with:
|
||||||
**** on windows
|
***** ghc 6.8
|
||||||
***** binary
|
***** ghc 6.10.x
|
||||||
**** cabal packages after installing ghc 6.10.3, HP, hledger 0.5.1
|
***** windows
|
||||||
/usr/local/lib/ghc-6.10.3/./package.conf:
|
***** linux
|
||||||
Cabal-1.6.0.3, GLUT-2.1.1.2, HTTP-4000.0.6, HUnit-1.2.0.3,
|
***** macos
|
||||||
OpenGL-2.2.1.1, QuickCheck-1.2.0.0, array-0.2.0.0, base-3.0.3.1,
|
***** no flags
|
||||||
base-4.1.0.0, bytestring-0.9.1.4, cgi-3001.1.7.1,
|
***** happs flag
|
||||||
containers-0.2.0.1, directory-1.0.0.3, (dph-base-0.3),
|
***** vty flag
|
||||||
(dph-par-0.3), (dph-prim-interface-0.3), (dph-prim-par-0.3),
|
*** field
|
||||||
(dph-prim-seq-0.3), (dph-seq-0.3), editline-0.2.1.0,
|
**** talkback, auto bug reports
|
||||||
extensible-exceptions-0.1.1.0, fgl-5.4.2.2, filepath-1.1.0.2,
|
**** usability
|
||||||
(ghc-6.10.3), ghc-prim-0.1.0.0, haddock-2.4.2,
|
**** download & usage stats
|
||||||
haskell-platform-2009.2.0.1, haskell-src-1.0.1.3,
|
** errors
|
||||||
haskell98-1.0.1.0, hpc-0.5.0.3, html-1.0.1.2, integer-0.1.0.1,
|
*** allow comment lines immediately after postings
|
||||||
mtl-1.1.0.2, network-2.2.1, network-2.2.1.1, old-locale-1.0.0.1,
|
*** accept all real-world ledger files
|
||||||
old-time-1.0.0.2, packedstring-0.1.0.1, parallel-1.1.0.1,
|
*** account name eliding and layout varies between commands
|
||||||
parsec-2.1.0.1, pretty-1.0.1.0, process-1.0.1.1, random-1.0.0.1,
|
*** vty issues 3, 4
|
||||||
regex-base-0.72.0.2, regex-compat-0.71.0.1, regex-posix-0.72.0.3,
|
**** support upcoming vty development
|
||||||
rts-1.0, stm-2.1.1.2, syb-0.1.0.1, template-haskell-2.3.0.1,
|
*** happstack ipv6 issue 6
|
||||||
time-1.1.2.4, time-1.1.3, unix-2.3.2.0, xhtml-3000.2.0.1,
|
** refactoring, code cleanup
|
||||||
zlib-0.5.0.0
|
*** switch to hack, support other backends
|
||||||
/home/simon/.ghc/i386-linux-6.10.3/package.conf:
|
*** pair programming
|
||||||
csv-0.1.1, hledger-0.5.1, mtlparse-0.0.1, regex-base-0.93.1,
|
|
||||||
regex-compat-0.71.0.1, regex-pcre-0.94.1, regex-posix-0.72.0.3,
|
|
||||||
regexpr-0.5.1, split-0.1.1, testpack-1.0.2, utf8-string-0.3.4
|
|
||||||
**** packages after hledger -fhapps -fvty
|
|
||||||
|
|
||||||
*** issues with pandoc's rst support
|
|
||||||
**** treats HOME's h2s as h1
|
|
||||||
**** quotes only first line of a :: literal block
|
|
||||||
**** doesn't support http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html#indirect-hyperlink-targets
|
|
||||||
** code cleanup
|
|
||||||
*** resources
|
|
||||||
http://community.haskell.org/~ndm/downloads/paper-hoogle_overview-19_nov_2008.pdf -> Design Guidelines
|
|
||||||
*** seek more modularity
|
*** seek more modularity
|
||||||
*** try export lists
|
*** try export lists
|
||||||
*** graph and reduce dependencies
|
*** graph and reduce dependencies
|
||||||
*** pair programming
|
*** clarify levels of abstraction
|
||||||
*** levels of abstraction
|
|
||||||
**** balance sheet view - data model, view layout
|
**** balance sheet view - data model, view layout
|
||||||
**** hledger web framework - define routes, handlers/views/actions/controllers/presenters, skins/styles..
|
**** hledger web framework - define routes, handlers/views/actions/controllers/presenters, skins/styles..
|
||||||
**** happstack - ? happstack api..
|
**** happstack - ? happstack api..
|
||||||
@ -333,27 +381,31 @@ http://community.haskell.org/~ndm/downloads/paper-hoogle_overview-19_nov_2008.pd
|
|||||||
**** ghc - ghc 6.8, 6.10..
|
**** ghc - ghc 6.8, 6.10..
|
||||||
**** haskell 98
|
**** haskell 98
|
||||||
**** unix/windows/mac platform
|
**** unix/windows/mac platform
|
||||||
** features/wishlist
|
*** inspiration
|
||||||
*** actual & effective txn & posting dates
|
http://community.haskell.org/~ndm/downloads/paper-hoogle_overview-19_nov_2008.pdf -> Design Guidelines
|
||||||
|
** features
|
||||||
|
*** easy data entry
|
||||||
|
*** assume current year as default
|
||||||
|
*** wide/customisable/consistent layout
|
||||||
|
*** simple --flat balance report format
|
||||||
|
*** better web ui/gui support
|
||||||
|
*** effective dates for postings
|
||||||
|
*** ledger-compatible xml output ?
|
||||||
*** allow no command or unordered command with pattern args
|
*** allow no command or unordered command with pattern args
|
||||||
*** --flat timelog balance report option for clients
|
|
||||||
*** alternative easy timelog format
|
|
||||||
*** better web gui
|
|
||||||
*** nice reports with charts
|
*** nice reports with charts
|
||||||
*** data entry!
|
*** more automated bank data conversion
|
||||||
|
*** ofx download
|
||||||
|
*** easy timelog format
|
||||||
*** watching a changing ledger
|
*** watching a changing ledger
|
||||||
*** wide format
|
|
||||||
*** more date syntax ? last nov, next friday, optional this, week of
|
*** more date syntax ? last nov, next friday, optional this, week of
|
||||||
*** more period syntax ? every N days, biweekly
|
*** more period syntax ? every N days, biweekly
|
||||||
*** allow comment lines immediately after or within an entry
|
|
||||||
*** accept multiple -f files
|
*** accept multiple -f files
|
||||||
*** more reliable tidy layout from print
|
*** more reliable tidy layout from print
|
||||||
*** parse more file formats - gnucash, qif, ofx, csv..
|
*** parse more file formats - gnucash, qif, ofx, csv..
|
||||||
*** i18n
|
*** i18n
|
||||||
*** speed
|
*** speed
|
||||||
**** optimisation
|
*** clear interfaces/surfaces/plugin architecture
|
||||||
**** speed regression tests
|
|
||||||
*** plugins
|
|
||||||
* misc
|
* misc
|
||||||
** things I want to know
|
** things I want to know
|
||||||
*** time
|
*** time
|
||||||
@ -412,3 +464,7 @@ nmatrace a = trace (show as) a where (Mixed as) = normaliseMixedAmount a
|
|||||||
** financial software
|
** financial software
|
||||||
*** http://weberp.org
|
*** http://weberp.org
|
||||||
**** http://www.weberp.org/weberp/doc/Manual/ManualContents.php
|
**** http://www.weberp.org/weberp/doc/Manual/ManualContents.php
|
||||||
|
** issues with pandoc's rst support
|
||||||
|
*** treats HOME's h2s as h1
|
||||||
|
*** quotes only first line of a :: literal block
|
||||||
|
*** doesn't support http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html#indirect-hyperlink-targets
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user