mirror of
https://github.com/simonmichael/hledger.git
synced 2024-11-08 07:09:28 +03:00
notes cleanup
This commit is contained in:
parent
d5f8c90dd4
commit
6b7f458d02
282
NOTES
282
NOTES
@ -1,5 +1,15 @@
|
||||
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.
|
||||
Clarity of concepts, economy of features, efficiency and reliability of
|
||||
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
|
||||
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
|
||||
** errors
|
||||
*** account name eliding and layout varies between commands and from ledger
|
||||
*** vty: hledger ui dies showing non-ascii chars in commodity symbol
|
||||
*** vty: hledger ui shows junk in gnome terminal
|
||||
** testing
|
||||
*** test for robust ledger file parsing
|
||||
**** test all ledger file format features
|
||||
**** clarify hledgerisms in file format - that hledger can read but ledger can't
|
||||
**** run ledger 3 baseline tests
|
||||
*** --compare (xml?) output with ledger's ?
|
||||
*** build with -Wall and anything else useful
|
||||
*** build with multiple ghc versions
|
||||
*** cabal test
|
||||
*** release tests
|
||||
**** cabal install with:
|
||||
***** ghc 6.8
|
||||
***** ghc 6.10.x
|
||||
***** windows
|
||||
***** linux
|
||||
***** macos
|
||||
***** no flags
|
||||
***** happs flag
|
||||
***** vty flag
|
||||
** docs/marketing/packaging
|
||||
*** streamline - less is more
|
||||
** packaging, installability
|
||||
*** easier installation
|
||||
**** on all platforms
|
||||
***** binary build/publish process
|
||||
***** reduce dependencies
|
||||
***** split packages ?
|
||||
**** on linux
|
||||
***** keep up with debian/ubuntu haskell packagers
|
||||
**** on mac
|
||||
***** easy data entry, then
|
||||
***** easy installer
|
||||
***** easy startup
|
||||
**** on windows
|
||||
***** easy data entry, then
|
||||
***** easy installer
|
||||
***** easy startup
|
||||
** documentation, marketing
|
||||
*** add missing
|
||||
**** hledger/ledger feature matrix
|
||||
**** regular-user home page
|
||||
*** reduce
|
||||
*** better screenshots/images
|
||||
*** automate
|
||||
**** keep blurbs in sync
|
||||
***** README file
|
||||
@ -52,13 +52,74 @@ We aim to make reliable, maintainable, usable software, sustainably.
|
||||
***** gmane description
|
||||
***** darcsweb description
|
||||
**** keep Options.hs and README option list in sync
|
||||
**** discover commands for --help
|
||||
**** accouncements
|
||||
*** document smart dates, period expressions, display expressions
|
||||
**** discovering commands for --help
|
||||
**** announcements
|
||||
*** 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
|
||||
**** license change ?
|
||||
**** donate button, see chimoo guy
|
||||
**** funding document 2009/01
|
||||
***** text
|
||||
=======
|
||||
funding
|
||||
=======
|
||||
@ -251,77 +312,64 @@ competitors/fellow niche inhabitants
|
||||
* ...
|
||||
|
||||
***** responses
|
||||
***** albino
|
||||
have you considered talking to business who hate their financial sw and going from there
|
||||
***** gwern
|
||||
most haskellers have never heard of hledger, sounds arrogant or hubristic to talk of charging for it
|
||||
****** albino
|
||||
have you considered talking to business who hate their financial sw and going from there
|
||||
****** gwern
|
||||
most haskellers have never heard of hledger, sounds arrogant or hubristic to talk of charging for it
|
||||
|
||||
**** qooxledger
|
||||
*** better screenshots
|
||||
*** screencasts
|
||||
*** developer docs
|
||||
**** style guide
|
||||
***** see above
|
||||
**** unsafe things which may fail at runtime
|
||||
***** incomplete pattern matching
|
||||
***** error
|
||||
***** printf
|
||||
*** cabal haddock
|
||||
*** liveness
|
||||
**** show feeds on site ?
|
||||
***** commits (darcsweb)
|
||||
**** weekly repo activity summary on list
|
||||
**** available feeds
|
||||
*** make installation easier
|
||||
**** on all platforms
|
||||
***** set up binary publishing
|
||||
***** reduce dependencies
|
||||
***** split packages ?
|
||||
**** on linux
|
||||
***** debian
|
||||
***** ubuntu
|
||||
**** on mac
|
||||
***** ports
|
||||
***** binary
|
||||
**** on windows
|
||||
***** binary
|
||||
**** cabal packages after installing ghc 6.10.3, HP, hledger 0.5.1
|
||||
/usr/local/lib/ghc-6.10.3/./package.conf:
|
||||
Cabal-1.6.0.3, GLUT-2.1.1.2, HTTP-4000.0.6, HUnit-1.2.0.3,
|
||||
OpenGL-2.2.1.1, QuickCheck-1.2.0.0, array-0.2.0.0, base-3.0.3.1,
|
||||
base-4.1.0.0, bytestring-0.9.1.4, cgi-3001.1.7.1,
|
||||
containers-0.2.0.1, directory-1.0.0.3, (dph-base-0.3),
|
||||
(dph-par-0.3), (dph-prim-interface-0.3), (dph-prim-par-0.3),
|
||||
(dph-prim-seq-0.3), (dph-seq-0.3), editline-0.2.1.0,
|
||||
extensible-exceptions-0.1.1.0, fgl-5.4.2.2, filepath-1.1.0.2,
|
||||
(ghc-6.10.3), ghc-prim-0.1.0.0, haddock-2.4.2,
|
||||
haskell-platform-2009.2.0.1, haskell-src-1.0.1.3,
|
||||
haskell98-1.0.1.0, hpc-0.5.0.3, html-1.0.1.2, integer-0.1.0.1,
|
||||
mtl-1.1.0.2, network-2.2.1, network-2.2.1.1, old-locale-1.0.0.1,
|
||||
old-time-1.0.0.2, packedstring-0.1.0.1, parallel-1.1.0.1,
|
||||
parsec-2.1.0.1, pretty-1.0.1.0, process-1.0.1.1, random-1.0.0.1,
|
||||
regex-base-0.72.0.2, regex-compat-0.71.0.1, regex-posix-0.72.0.3,
|
||||
rts-1.0, stm-2.1.1.2, syb-0.1.0.1, template-haskell-2.3.0.1,
|
||||
time-1.1.2.4, time-1.1.3, unix-2.3.2.0, xhtml-3000.2.0.1,
|
||||
zlib-0.5.0.0
|
||||
/home/simon/.ghc/i386-linux-6.10.3/package.conf:
|
||||
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
|
||||
**** home edition
|
||||
** testing
|
||||
*** documentation
|
||||
**** site up, current
|
||||
**** demo up, current
|
||||
**** haddock
|
||||
**** doctests
|
||||
*** unit
|
||||
**** hunit
|
||||
**** quickcheck
|
||||
**** easier unit test development
|
||||
*** functional
|
||||
**** ledger file parsing tests
|
||||
***** test all ledger file format features
|
||||
***** clarify hledgerisms in file format - that hledger can read but ledger can't
|
||||
**** ledger 3 baseline tests
|
||||
**** auto-compare xml output with ledger's ?
|
||||
**** allow multiple tests in .test ?
|
||||
*** performance
|
||||
**** speed, benchmark tests
|
||||
**** memory usage
|
||||
*** build & packaging
|
||||
**** use -Wall and anything else useful
|
||||
**** build with multiple ghc versions
|
||||
**** cabal test
|
||||
**** hackage upload
|
||||
**** cabal install with:
|
||||
***** ghc 6.8
|
||||
***** ghc 6.10.x
|
||||
***** windows
|
||||
***** linux
|
||||
***** macos
|
||||
***** no flags
|
||||
***** happs flag
|
||||
***** vty flag
|
||||
*** field
|
||||
**** talkback, auto bug reports
|
||||
**** usability
|
||||
**** download & usage stats
|
||||
** errors
|
||||
*** allow comment lines immediately after postings
|
||||
*** accept all real-world ledger files
|
||||
*** account name eliding and layout varies between commands
|
||||
*** vty issues 3, 4
|
||||
**** support upcoming vty development
|
||||
*** happstack ipv6 issue 6
|
||||
** refactoring, code cleanup
|
||||
*** switch to hack, support other backends
|
||||
*** pair programming
|
||||
*** seek more modularity
|
||||
*** try export lists
|
||||
*** graph and reduce dependencies
|
||||
*** pair programming
|
||||
*** levels of abstraction
|
||||
*** clarify levels of abstraction
|
||||
**** balance sheet view - data model, view layout
|
||||
**** hledger web framework - define routes, handlers/views/actions/controllers/presenters, skins/styles..
|
||||
**** 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..
|
||||
**** haskell 98
|
||||
**** unix/windows/mac platform
|
||||
** features/wishlist
|
||||
*** actual & effective txn & posting dates
|
||||
*** inspiration
|
||||
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
|
||||
*** --flat timelog balance report option for clients
|
||||
*** alternative easy timelog format
|
||||
*** better web gui
|
||||
*** nice reports with charts
|
||||
*** data entry!
|
||||
*** more automated bank data conversion
|
||||
*** ofx download
|
||||
*** easy timelog format
|
||||
*** watching a changing ledger
|
||||
*** wide format
|
||||
*** more date syntax ? last nov, next friday, optional this, week of
|
||||
*** more period syntax ? every N days, biweekly
|
||||
*** allow comment lines immediately after or within an entry
|
||||
*** accept multiple -f files
|
||||
*** more reliable tidy layout from print
|
||||
*** parse more file formats - gnucash, qif, ofx, csv..
|
||||
*** i18n
|
||||
*** speed
|
||||
**** optimisation
|
||||
**** speed regression tests
|
||||
*** plugins
|
||||
*** clear interfaces/surfaces/plugin architecture
|
||||
|
||||
* misc
|
||||
** things I want to know
|
||||
*** time
|
||||
@ -412,3 +464,7 @@ nmatrace a = trace (show as) a where (Mixed as) = normaliseMixedAmount a
|
||||
** financial software
|
||||
*** http://weberp.org
|
||||
**** 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