banking
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 26
Fruity Banking! 0.31
Fruity Banking is a double-entry accounting system that can be used for personal or business account management. more>>
Fruity Banking! is a double entry accounting system which can be used for personal or business account management.
Main features:
- GPL licensed.
- Intuitive, clear, Web-based interface
- uses the CherryPy framework to run as a self-contained application.
- Can be run via Apache/mod_rewrite or mod_python
- MySQL backend and simple database structure make it easy to write scripts in any language.
- Cross platform/portable and will run on Windows, OSX, Linux, *BSD, etc.
Enhancements:
- More presentation improvements.
<<lessMain features:
- GPL licensed.
- Intuitive, clear, Web-based interface
- uses the CherryPy framework to run as a self-contained application.
- Can be run via Apache/mod_rewrite or mod_python
- MySQL backend and simple database structure make it easy to write scripts in any language.
- Cross platform/portable and will run on Windows, OSX, Linux, *BSD, etc.
Enhancements:
- More presentation improvements.
Download (0.36MB)
Added: 2007-04-24 License: GPL (GNU General Public License) Price:
914 downloads
AqBanking 2.9.2 Beta
AqBanking is a modular and generic interface to online banking tasks. more>>
AqBanking is a modular and generic interface to online banking tasks, financial file formats (import/export) and bank/country/currency information.
AqBanking provides frontends for Qt, KDE, GTK, and console. AqBanking uses backend plugins to actually perform the online tasks. HBCI, OFX Direct Connect, and DTAUS discs are currently supported. AqBanking is used by GnuCash, KMyMoney, and QBankManager.
Whats New in 2.2.6 Stable Release:
- On MacOS X, qt is now detected correctly.
- On Windows/mingw32, the configuration file is saved correctly.
- Adaptations on gwenhywfar changes are added.
- For the OFX DirectConnect backend, account types are now set correctly.
- The bank data files for Germany have been updated.
Whats New in 2.9.2 Beta Development Release:
- This release fixes some major bugs in the previous version.
- A new banking job for loading prepaid cards for cell phones has been added (so far implemented only for HBCI).
- Work has begun on FinTS3 support in AqHBCI.
<<lessAqBanking provides frontends for Qt, KDE, GTK, and console. AqBanking uses backend plugins to actually perform the online tasks. HBCI, OFX Direct Connect, and DTAUS discs are currently supported. AqBanking is used by GnuCash, KMyMoney, and QBankManager.
Whats New in 2.2.6 Stable Release:
- On MacOS X, qt is now detected correctly.
- On Windows/mingw32, the configuration file is saved correctly.
- Adaptations on gwenhywfar changes are added.
- For the OFX DirectConnect backend, account types are now set correctly.
- The bank data files for Germany have been updated.
Whats New in 2.9.2 Beta Development Release:
- This release fixes some major bugs in the previous version.
- A new banking job for loading prepaid cards for cell phones has been added (so far implemented only for HBCI).
- Work has begun on FinTS3 support in AqHBCI.
Download (4.0MB)
Added: 2007-05-14 License: GPL (GNU General Public License) Price:
896 downloads
QBankManager 0.9.41 Beta
QBankManager is a home banking program. more>>
QBankManager is a QT program for simple administration of Online Banking accounts. QBankManager is supposed to be the successor of the ancient program KOpenHBCI I wrote a few years ago.
It is still under heavy construction.
Enhancements:
- This release adds support for the new banking job for loading prepaid cards of cell phones.
- The dialog for transfer orders has been improved, and account information such as owner name, etc. is now only updated from AqBanking if empty.
<<lessIt is still under heavy construction.
Enhancements:
- This release adds support for the new banking job for loading prepaid cards of cell phones.
- The dialog for transfer orders has been improved, and account information such as owner name, etc. is now only updated from AqBanking if empty.
Download (0.63MB)
Added: 2007-05-14 License: GPL (GNU General Public License) Price:
894 downloads
Other version of QBankManager
License:Freeware
mbank-cli svn20070219R053
mbank-cli project provides a rudimentary command line interface to the mBank online banking system. more>>
mbank-cli project provides a rudimentary command line interface to the mBank online banking system.
Usage:
You may create debug directory to make debugging easier.
You may provide --verbose option to fill your screen with cryptic strings.
Usage examples:
$ ./mbank-cli list # list available accounts
$ ./mbank-cli history Foo # show history of the Foo account
$ ./mbank-cli history Bar --range 2005-01-01 2005-12-31
$ ./mbank-cli history Quux --from 2006-06-01
$ ./mbank-cli future Foo # show list of planned transfers of the Foo account
$ ./mbank-cli funds # list available investment funds
$ ./mbank-cli logout
<<lessUsage:
You may create debug directory to make debugging easier.
You may provide --verbose option to fill your screen with cryptic strings.
Usage examples:
$ ./mbank-cli list # list available accounts
$ ./mbank-cli history Foo # show history of the Foo account
$ ./mbank-cli history Bar --range 2005-01-01 2005-12-31
$ ./mbank-cli history Quux --from 2006-06-01
$ ./mbank-cli future Foo # show list of planned transfers of the Foo account
$ ./mbank-cli funds # list available investment funds
$ ./mbank-cli logout
Download (0.006MB)
Added: 2007-02-20 License: GPL (GNU General Public License) Price:
977 downloads
BananaMIS 1.9.12
BananaMIS is a back office administration system for bananapos. more>>
BananaMIS is a back office administration system for bananapos.
The system is entirely modular, and has an extensive permissions framework. The end presented interface to a user logging into the system is a function of how the user was set up. Every user has their own set of modules, tabs, and access permissions, allowing a completely custom set up for every user in the system.
The system covers the administrative requirements of the bananapos system, and also allows other aspects of business to be maintained. These include banking, accounting, employees, suppliers, customers, purchasing, ad nauseum.
CRM and ERP aspects are continuing to expand.
And if there is something missing from the system, then simply write your own module, and insert into the mis.
<<lessThe system is entirely modular, and has an extensive permissions framework. The end presented interface to a user logging into the system is a function of how the user was set up. Every user has their own set of modules, tabs, and access permissions, allowing a completely custom set up for every user in the system.
The system covers the administrative requirements of the bananapos system, and also allows other aspects of business to be maintained. These include banking, accounting, employees, suppliers, customers, purchasing, ad nauseum.
CRM and ERP aspects are continuing to expand.
And if there is something missing from the system, then simply write your own module, and insert into the mis.
Download (0.965MB)
Added: 2006-06-12 License: GPL (GNU General Public License) Price:
1231 downloads
Enigform 0.8.1
Enigform is a Mozilla Firefox extension that provides you the ability to digitally sign HTTP GET and POST requests. more>>
Enigform is a Mozilla Firefox extension that provides you the ability to digitally sign HTTP GET and POST requests, even those generated via AJAX calls. The project implements the mechanism described in the white paper entitled OpenPGP based Identity and Data Authentication for HTTP POST payload by Arturo Buanzo Busleiman. Okay, me.
This extension is focused on adding an extra layer of security to the payload of HTTP POST requests. There is also a great extension called Enigmail that enhances Mozilla Thunderbird with PGP capabilities. You can check out Enigmail at its Mozdev Page.
For years different methods for User Authentication and Session Management have been implemented:
- HTTP Authentication
- Cookies
- GET/POST values
- SSL Certificates
- A combination of all the above.
Regarding SMTP, e-mail has been digitally signed for a long time now, and it is a standard. Extending its usage to the HTTP protocol sounded like a natural idea, specially at 3am when I woke up with a OpenPGP-signed HTTP POST request in my head.
By having the GET query string and the POST payload ("variable=test") signed using an ASCII armored, Clearsign, OpenPGP based procedure, the browsing user can provide Identity and Data Authentication to that payload, thus adding all OpenPGP benefits to the HTTP protocol.
This allows web developers to add a new layer of security to their applications, and if correctly implemented will render man in the middle attacks useless. The direct benefit of implementing this extension is that web developers will be able to verify the payloads signature, potentially avoiding obscure session management, and/or complicated login procedures.
For example, Highly Secure Home Banking sites could be created by using Enigform + some simple server side code.
<<lessThis extension is focused on adding an extra layer of security to the payload of HTTP POST requests. There is also a great extension called Enigmail that enhances Mozilla Thunderbird with PGP capabilities. You can check out Enigmail at its Mozdev Page.
For years different methods for User Authentication and Session Management have been implemented:
- HTTP Authentication
- Cookies
- GET/POST values
- SSL Certificates
- A combination of all the above.
Regarding SMTP, e-mail has been digitally signed for a long time now, and it is a standard. Extending its usage to the HTTP protocol sounded like a natural idea, specially at 3am when I woke up with a OpenPGP-signed HTTP POST request in my head.
By having the GET query string and the POST payload ("variable=test") signed using an ASCII armored, Clearsign, OpenPGP based procedure, the browsing user can provide Identity and Data Authentication to that payload, thus adding all OpenPGP benefits to the HTTP protocol.
This allows web developers to add a new layer of security to their applications, and if correctly implemented will render man in the middle attacks useless. The direct benefit of implementing this extension is that web developers will be able to verify the payloads signature, potentially avoiding obscure session management, and/or complicated login procedures.
For example, Highly Secure Home Banking sites could be created by using Enigform + some simple server side code.
Download (0.010MB)
Added: 2007-06-19 License: MPL (Mozilla Public License) Price:
858 downloads
Valgrind 3.2.3
Valgrind is an award-winning suite of tools for debugging and profiling Linux programs. more>>
Valgrind is an award-winning suite of tools for debugging and profiling Linux programs. With the tools that come with Valgrind, you can automatically detect many memory management and threading bugs, avoiding hours of frustrating bug-hunting, making your programs more stable. You can also perform detailed profiling, to speed up and reduce memory use of your programs.
Valgrind distribution currently includes three tools: a memory error detectors, a cache (time) profiler and a heap (space) profiler.
Valgrind is Open Source / Free Software, and is freely available under the GNU General Public License.
Main features:
- Valgrind will save you hours of debugging time. With Valgrind tools you can automatically detect many memory management and threading bugs. This gives you confidence that your programs are free of many common bugs, some of which would take hours to find manually, or never be found at all. You can find and eliminate bugs before they become a problem.
- Valgrind can help you speed up your programs. With Valgrind tools you can also perform very detailed profiling to help speed up your programs.
- Valgrind is free. Free-as-in-speech: you can download it, read the source code, make modifications, and pass them on, all within the limits of the GNU GPL. And free-as-in-beer: we arent charging for it.
- Valgrind runs on x86/Linux, AMD64/Linux and PPC32/Linux, several of the most popular platforms in use. Valgrind works with all the major Linux distributions, including Red Hat, SuSE, Debian, Gentoo, Slackware, Mandrake, etc.
- Valgrind is easy to use. Valgrind uses dynamic binary translation, so you dont need to modify, recompile or relink your applications. Just prefix your command line with valgrind and everything works.
- Valgrind is not a toy. Valgrind is first and foremost a debugging and profiling system for large, complex programs. We have had feedback from users working on projects with up to 25 million lines of code. It has been used on projects of all sizes, from single-user personal projects, to projects with hundreds of programmers.
- Valgrind is suitable for any type of software. Valgrind has been used on almost every kind of software imaginable: desktop applications, libraries, databases, games, web browsers, network servers, distributed control systems, virtual reality frameworks, transaction servers, compilers, interpreters, virtual machines, telecom applications, embedded software, medical imaging, scientific programming, signal processing, video/audio programs, NASA Mars lander vision and rover navigation systems, business intelligence software, financial/banking software, operating system daemons, etc, etc. See a list of projects using Valgrind.
- Valgrind is widely used. Valgrind has been used by thousands of programmers across the world. We have received feedback from users in over 25 countries, including: Belgium, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, Italy, The Netherlands, Norway, Poland, Portugal, Russia, Sweden, Switzerland, UK, Argentina, Brazil, Canada, USA, Australia, India, Japan, New Zealand, Singapore, South Africa and Israel.
- Valgrind works with programs written in any language. Because Valgrind works directly with program binaries, it works with programs written in any programming language, be they compiled, just-in-time compiled, or interpreted. The Valgrind tools are largely aimed at programs written in C and C++, because programs written in these languages tend to have the most bugs! But it can, for example, be used to debug and profile systems written in a mixture of languages. Valgrind has been used on programs written partly or entirely in C, C++, Java, Perl, Python, assembly code, Fortran, Ada, and many others.
- Valgrind debugs and profiles your entire program. Unlike tools that require a recompilation step, Valgrind gives you total debugging and profiling coverage of every instruction executed by your program, even within system libraries. You can even use Valgrind on programs for which you dont have the source code.
- Valgrind can be used with other tools. Valgrind can start GDB and attach it to your program at the point(s) where errors are detected, so that you can poke around and figure out what was going on at the time.
- Valgrind is extensible. Valgrind consists of the Valgrind core, which provides a synthetic software CPU, and Valgrind tools, which plug into the core, and instrument and analyse the running program. Anyone can write powerful new tools that add arbitrary instrumentation to programs. This is much easier than writing such tools from scratch. This makes Valgrind ideal for experimenting with new kinds of debuggers, profilers, and similar tools.
- Valgrind is actively maintained. The Valgrind developers are constantly working to fix bugs, improve Valgrind, and ensure it works as new Linux distributions and libraries come out. There are also mailing lists you can subscribe to, and contact if youre having problems.
- So whats the catch? The main one is that programs run significantly more slowly under Valgrind. Depending on which tool you use, the slowdown factor can range from 5--100. This slowdown is similar to that of similar debugging and profiling tools. But since you dont have to use Valgrind all the time, this usually isnt too much of a problem. The hours youll save debugging will more than make up for it.
Enhancements:
- 3.2.3 is almost identical to 3.2.2, but fixes a regression that unfortunately crept into 3.2.2. The regression causes an assertion failure in Valgrind when running certain obscure SSE code fragments on x86-linux and amd64-linux. Please do not use (or package) 3.2.2; instead use 3.2.3.
<<lessValgrind distribution currently includes three tools: a memory error detectors, a cache (time) profiler and a heap (space) profiler.
Valgrind is Open Source / Free Software, and is freely available under the GNU General Public License.
Main features:
- Valgrind will save you hours of debugging time. With Valgrind tools you can automatically detect many memory management and threading bugs. This gives you confidence that your programs are free of many common bugs, some of which would take hours to find manually, or never be found at all. You can find and eliminate bugs before they become a problem.
- Valgrind can help you speed up your programs. With Valgrind tools you can also perform very detailed profiling to help speed up your programs.
- Valgrind is free. Free-as-in-speech: you can download it, read the source code, make modifications, and pass them on, all within the limits of the GNU GPL. And free-as-in-beer: we arent charging for it.
- Valgrind runs on x86/Linux, AMD64/Linux and PPC32/Linux, several of the most popular platforms in use. Valgrind works with all the major Linux distributions, including Red Hat, SuSE, Debian, Gentoo, Slackware, Mandrake, etc.
- Valgrind is easy to use. Valgrind uses dynamic binary translation, so you dont need to modify, recompile or relink your applications. Just prefix your command line with valgrind and everything works.
- Valgrind is not a toy. Valgrind is first and foremost a debugging and profiling system for large, complex programs. We have had feedback from users working on projects with up to 25 million lines of code. It has been used on projects of all sizes, from single-user personal projects, to projects with hundreds of programmers.
- Valgrind is suitable for any type of software. Valgrind has been used on almost every kind of software imaginable: desktop applications, libraries, databases, games, web browsers, network servers, distributed control systems, virtual reality frameworks, transaction servers, compilers, interpreters, virtual machines, telecom applications, embedded software, medical imaging, scientific programming, signal processing, video/audio programs, NASA Mars lander vision and rover navigation systems, business intelligence software, financial/banking software, operating system daemons, etc, etc. See a list of projects using Valgrind.
- Valgrind is widely used. Valgrind has been used by thousands of programmers across the world. We have received feedback from users in over 25 countries, including: Belgium, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, Italy, The Netherlands, Norway, Poland, Portugal, Russia, Sweden, Switzerland, UK, Argentina, Brazil, Canada, USA, Australia, India, Japan, New Zealand, Singapore, South Africa and Israel.
- Valgrind works with programs written in any language. Because Valgrind works directly with program binaries, it works with programs written in any programming language, be they compiled, just-in-time compiled, or interpreted. The Valgrind tools are largely aimed at programs written in C and C++, because programs written in these languages tend to have the most bugs! But it can, for example, be used to debug and profile systems written in a mixture of languages. Valgrind has been used on programs written partly or entirely in C, C++, Java, Perl, Python, assembly code, Fortran, Ada, and many others.
- Valgrind debugs and profiles your entire program. Unlike tools that require a recompilation step, Valgrind gives you total debugging and profiling coverage of every instruction executed by your program, even within system libraries. You can even use Valgrind on programs for which you dont have the source code.
- Valgrind can be used with other tools. Valgrind can start GDB and attach it to your program at the point(s) where errors are detected, so that you can poke around and figure out what was going on at the time.
- Valgrind is extensible. Valgrind consists of the Valgrind core, which provides a synthetic software CPU, and Valgrind tools, which plug into the core, and instrument and analyse the running program. Anyone can write powerful new tools that add arbitrary instrumentation to programs. This is much easier than writing such tools from scratch. This makes Valgrind ideal for experimenting with new kinds of debuggers, profilers, and similar tools.
- Valgrind is actively maintained. The Valgrind developers are constantly working to fix bugs, improve Valgrind, and ensure it works as new Linux distributions and libraries come out. There are also mailing lists you can subscribe to, and contact if youre having problems.
- So whats the catch? The main one is that programs run significantly more slowly under Valgrind. Depending on which tool you use, the slowdown factor can range from 5--100. This slowdown is similar to that of similar debugging and profiling tools. But since you dont have to use Valgrind all the time, this usually isnt too much of a problem. The hours youll save debugging will more than make up for it.
Enhancements:
- 3.2.3 is almost identical to 3.2.2, but fixes a regression that unfortunately crept into 3.2.2. The regression causes an assertion failure in Valgrind when running certain obscure SSE code fragments on x86-linux and amd64-linux. Please do not use (or package) 3.2.2; instead use 3.2.3.
Download (3.9MB)
Added: 2007-05-02 License: GPL (GNU General Public License) Price:
909 downloads
Finance::Bank::NetBranch 0.07
Finance::Bank::NetBranch is a Perl module that can manage your NetBranch accounts with Perl. more>>
Finance::Bank::NetBranch is a Perl module that can manage your NetBranch accounts with Perl.
SYNOPSIS
use Finance::Bank::NetBranch;
my $nb = Finance::Bank::NetBranch->new(
url => https://nbp1.cunetbranch.com/valley/,
account => 12345,
password => abcdef,
);
my @accounts = $nb->accounts;
foreach (@accounts) {
printf "%20s : %8s : USD %9.2f of %9.2fn",
$_->name, $_->account_no, $_->available, $_->balance;
my $days = 20;
for ($_->transactions(from => time - (86400 * $days), to => time)) {
printf "%10s | %20s | %80s : %9.2f, %9.2fn",
$_->date->ymd, $_->type, $_->description, $_->amount, $_->balance;
}
}
This module provides a rudimentary interface to NetBranch online banking. This module was originally implemented to interface with Valley Communities Credit Unions page at https://nbp1.cunetbranch.com/valley/, but the behavior of the module is theoretically generalized to "NetBranch" type online access.
However, I do not have access to another NetBranch account with another bank, and so any feedback on the actual behavior of this module would be greatly appreciated.
You will need either Crypt::SSLeay or IO::Socket::SSL installed for HTTPS support to work.
<<lessSYNOPSIS
use Finance::Bank::NetBranch;
my $nb = Finance::Bank::NetBranch->new(
url => https://nbp1.cunetbranch.com/valley/,
account => 12345,
password => abcdef,
);
my @accounts = $nb->accounts;
foreach (@accounts) {
printf "%20s : %8s : USD %9.2f of %9.2fn",
$_->name, $_->account_no, $_->available, $_->balance;
my $days = 20;
for ($_->transactions(from => time - (86400 * $days), to => time)) {
printf "%10s | %20s | %80s : %9.2f, %9.2fn",
$_->date->ymd, $_->type, $_->description, $_->amount, $_->balance;
}
}
This module provides a rudimentary interface to NetBranch online banking. This module was originally implemented to interface with Valley Communities Credit Unions page at https://nbp1.cunetbranch.com/valley/, but the behavior of the module is theoretically generalized to "NetBranch" type online access.
However, I do not have access to another NetBranch account with another bank, and so any feedback on the actual behavior of this module would be greatly appreciated.
You will need either Crypt::SSLeay or IO::Socket::SSL installed for HTTPS support to work.
Download (0.006MB)
Added: 2007-05-24 License: Perl Artistic License Price:
884 downloads
AqMoney 1.9.5
AqMoney is a console tool for home banking using OpenHBCI and Libchipcard. more>>
AqMoney is a console tool for home banking using OpenHBCI and Libchipcard. AqMoney supports all of the features offered by OpenHBCI.
<<less Download (0.62MB)
Added: 2006-05-05 License: LGPL (GNU Lesser General Public License) Price:
1271 downloads
RaboGRAP 0.6
RaboGRAP is a tool for Dutch Rabobank users. more>>
RaboGRAP is a tool for Dutch Rabobank users. RaboGRAP project generates reports containing overviews, statistics, summaries and graphs from your banking transactions, which can be downloaded from the Rabobank Internet banking site.
Reports are generated for various time frames (per year and per month) as well as for all of the transactions. The reports provide a valuable insight into your income and expenses.
<<lessReports are generated for various time frames (per year and per month) as well as for all of the transactions. The reports provide a valuable insight into your income and expenses.
Download (0.032MB)
Added: 2006-03-14 License: GPL (GNU General Public License) Price:
1320 downloads
JDBCPersistence 1.5 Beta 2
JDBCPersistence project is an Object Relational Mapping Framework. more>>
JDBCPersistence project is an Object Relational Mapping Framework. Designed for use in high volume online banking application the package delivers performance matching of that exhibited by hand written JDBC code.
The differentiating features of JDBCPersistence are a result of the focus placed first and foremost on performance followed by making programmer most effective by building on existing knowledge of SQL, JDBC APIs, IDEs and, at the same time, avoiding creation of dependencies on specific libraries, tools, IDEs.
The framework strikes a good balance in what it provides verses what it requires a programmer to do in order to use it, e.g. a programmer could quickly prototype value objects by specifying them as Java interfaces and asking the framework to provide implementation for these interfaces at runtime, thus allowing to go from specifying an interface to using it in no time.
On the other hand, recognizing that data relationships are governed by business rules much more complex than could be specified in a typical ORM configuration file, a programmer is required to maintain such relationships in code.
The focus of the framework is to provide ORM services while leaving other concerns, in particular, data caching, up to the developer to solve in the context of an application. Being aware that the caching requirements may be different in online vs. batch application, the framework does not prescribe a solution. Developer needs to decide on application specific caching policy and implement it in an architectural layer (DAO) designed to function in both contexts.
The framework does not add any behavior to the classes that comprise the application. Classes supplied by the developer are the classes that will be used by the application when it runs.
JDBCPersistence uses bytecode generation technique to create bytecode for classes that implement logic used for persisting the data. Such, for every, loosely speaking "Java Bean", that requires persistence, a persistor class that implements CRUD operations is created. As opposed to using reflection, the approach of generating bytecode is apt to further optimization by JVM.
JDBCPersistence takes bytecode generation a little further by providing a feature that allows generating complete implementation of a value object specified as an abstract class. Similar to generating full implementation for Java interface class that describes value object class, the framework can generate implementation for all abstract methods of an abstract class representing value object.
As all of the bytecode generation takes place at run time, there is no impact on development or build process. The approach of generating bytecode at runtime is also used by RMI implementation of the Java Platform starting with version 5.0.
The API of the framework builds on the existing JDBC APIs. JDBCPersistences public API adds four classes and three interfaces. As the framework uses SQL for queering the data a curve associated with learning framework specific query language is avoided.
In an attempt to "keep it simple" JDBCPersistence only dependency is ASM, which is used for bytecode generation. The footprint of the package is under 200K.
<<lessThe differentiating features of JDBCPersistence are a result of the focus placed first and foremost on performance followed by making programmer most effective by building on existing knowledge of SQL, JDBC APIs, IDEs and, at the same time, avoiding creation of dependencies on specific libraries, tools, IDEs.
The framework strikes a good balance in what it provides verses what it requires a programmer to do in order to use it, e.g. a programmer could quickly prototype value objects by specifying them as Java interfaces and asking the framework to provide implementation for these interfaces at runtime, thus allowing to go from specifying an interface to using it in no time.
On the other hand, recognizing that data relationships are governed by business rules much more complex than could be specified in a typical ORM configuration file, a programmer is required to maintain such relationships in code.
The focus of the framework is to provide ORM services while leaving other concerns, in particular, data caching, up to the developer to solve in the context of an application. Being aware that the caching requirements may be different in online vs. batch application, the framework does not prescribe a solution. Developer needs to decide on application specific caching policy and implement it in an architectural layer (DAO) designed to function in both contexts.
The framework does not add any behavior to the classes that comprise the application. Classes supplied by the developer are the classes that will be used by the application when it runs.
JDBCPersistence uses bytecode generation technique to create bytecode for classes that implement logic used for persisting the data. Such, for every, loosely speaking "Java Bean", that requires persistence, a persistor class that implements CRUD operations is created. As opposed to using reflection, the approach of generating bytecode is apt to further optimization by JVM.
JDBCPersistence takes bytecode generation a little further by providing a feature that allows generating complete implementation of a value object specified as an abstract class. Similar to generating full implementation for Java interface class that describes value object class, the framework can generate implementation for all abstract methods of an abstract class representing value object.
As all of the bytecode generation takes place at run time, there is no impact on development or build process. The approach of generating bytecode at runtime is also used by RMI implementation of the Java Platform starting with version 5.0.
The API of the framework builds on the existing JDBC APIs. JDBCPersistences public API adds four classes and three interfaces. As the framework uses SQL for queering the data a curve associated with learning framework specific query language is avoided.
In an attempt to "keep it simple" JDBCPersistence only dependency is ASM, which is used for bytecode generation. The footprint of the package is under 200K.
Download (0.16MB)
Added: 2006-08-28 License: LGPL (GNU Lesser General Public License) Price:
1152 downloads
Acme::OneHundredNotOut 100
Acme::OneHundredNotOut is a raise of the bat, a tip of the hat. more>>
Acme::OneHundredNotOut is a raise of the bat, a tip of the hat.
I have just released my 100th module to CPAN, the first time that anyone has reached that target. As some of you may know, I am getting ready to go back to college and reinvent myself from being a programmer into being a missionary. I dont forsee that many more Perl modules coming out of this.
Of course, this doesnt mean that Im going to abjure usage of Perl forever; any time theres a computer and something I need automated, out will come the Swiss Army Chainsaw and the job will get done. In fact, we recently needed to manipulate some text from a mission handbook to translate it into Japanese, and Perl was there handling and collating all that.
But 100 modules is a convenient place to stop and take stock, and I hope that those of you who have benefitted from my modules, programs or writing about Perl will forgive me a certain spot of self-indulgence as I look back over my CPAN career, especially since I feel that the diversity of modules that Ive produced is a good indication of the diversity of what can be done with Perl.
Lets begin, then, with some humble beginnings, and then catch up on recent history.
The Embarrassing Past
Contrary to popular belief, I was not always a CPAN author. I started writing modules in 1998, immediately after reading the first edition of the Perl Cookbook - yes, you can blame Nat and Tom for all this. The first module that I released was Tie::DiscoveryHash, since Id just learnt about tied hashes. As with many of my modules, it was an integral part of another software project which I actually never finished, and now cant find.
The first module that I ever wrote (but, by a curious quirk of fate, precisely the fiftieth module I released) was called String::Tokeniser, which is still a reasonably handy way of getting an iterator over tokenising a string. (Someone recently released String::Tokenizer, which makes me laugh.) This too was for an abortive project, webperl, an application of Don Knuths WEB system of structured documentation to Perl. However, given the code quality of these two modules, its perhaps just as well that the projects never saw the light of day.
There are a few other modules Id rather like to forget, too. Devel::Pointer was a sick joke that went badly wrong - it allowed people to use pointers in Perl. Some people failed to notice that referring to memory locations directly in an extremely high-level language was a dangerous and silly thing to do, and actually used the damned thing, and I started getting requests for support for it. Then at some point in 2001, when I should really have known better, I developed an interest in Microsofts .NET and the C# language, which I still think is pretty neat; but I decided it might be a good idea to translate the Mono projects tokenizer and parser into Perl, ending up with C::Sharp. I never got around to doing the parser part, or indeed anything else with it, and so it died a lonely death in a dark corner of CPAN. GTK::HandyClist was my foray into programming graphical applications, which started and ended there.
Bundle::SDK::SIMON was actually the slides from a talk on my top ten favourite CPAN modules - except that this changes so quickly over time, it doesnt really make much sense any more.
Finally, Array::FileReader was an attempt to optimize a file access process. Unfortunately, my "optimization" ended up introducing more overheads than the naive solution. It all goes to show. Since then, Mark-Jason Dominus, another huge influence in the development of my CPAN career, has written Tie::File, which not only has a better name but is actually efficient too.
The Internals Phase
1999-2000 were disastrous years for me personally but magnificent years Perl-sonally. Stuck in a boring job and a tiny flat in the middle of Tokyo, I had plenty of time to get stuck into more Perl development. I felt that getting involved with perl5-porters would be a good way of gettting to know more about Perl, and so I needed a hobby horse - an issue of Perls development that I cared about. Since I was in Japan and working a lot with non-Latin text, Unicode support seemed a good thing to work on, and so Unicode::Decompose appeared, while I fixed up a substantial part of the post-5.6 core Unicode support.
Id recommend this way to anyone who wants to get more involved in the Perl community, although I was very lucky in terms of who else happened to be around at the time: Gurusamy Sarathy was extremely gracious in helping me turn my fledgling C code into something fit for the Perl core, and he also helped me understand the perl5-porters etiquette (yes, there was some at the time) and what makes a good patch, while Jarkko Hietaniemi was always good for suggestions of interesting things for keen people to work on. Seriously, get involved. If I can do it, anyone can.
Anyway, this fixation with understanding the Perl 5 internals, and especially the Perl 5 compiler, (due to yet another of my Perl influences, the great Malcolm Beattie) led to quite a torrent of modules, from ByteCache, an implementation of just-in-time compilation for Perl modules, through B::Flags and B::Tree to help visualising the Perl op tree, to uninit, B::Generate, optimizer and B::Utils for modifying it.
Perl About The House
Now we abandon chronological order somewhat and take a look at the various areas in which Ive used Perl. One of these areas has been the automation of everyday life: checking my bank balance with Finance::Bank::LloydsTSB (the first Perl module to interface to personal internet banking, no less) and my phone bill with a release of Tony Bowdens Data::BT::PhoneBill.
Finance::Bank::LloydsTSB was meant to go with Finance::QIF, my Quicken file parser, to produce another now-abandoned idea, a Perl finances manager. It seemed that Im only capable of producing modules, not full standalone applications - or at least, it seemed that way until I produced Bryar, my blogging software, based on the concepts from Rael Dornfests blosxom and beginning my adventures with Andy Wardleys Template Toolkit. Bryar also tuned me in to the Model-View-Controller framework idea, of which more later.
Another project I briefly played with was a personal robot, using the Sphinx/Festival speech handling and recognition modules from Cepstral and Kevin Lenzo. I didnt have X10, so I couldnt shout "lights" into the air in a wonderfully scifi way, but I could shout "mail" and have a summary of my inbox read to me, "news" to get the latest BBC news headlines, and "time" to hear the time. Of course, getting computers to tell the time nicely takes a little bit of work. I dont like "Its eleven oh-three pee em", since thats not what someone would say if you asked them the time. I wanted my robot to say "Its just after eleven", and thats what Time::Human does. Shame about the localisation.
<<lessI have just released my 100th module to CPAN, the first time that anyone has reached that target. As some of you may know, I am getting ready to go back to college and reinvent myself from being a programmer into being a missionary. I dont forsee that many more Perl modules coming out of this.
Of course, this doesnt mean that Im going to abjure usage of Perl forever; any time theres a computer and something I need automated, out will come the Swiss Army Chainsaw and the job will get done. In fact, we recently needed to manipulate some text from a mission handbook to translate it into Japanese, and Perl was there handling and collating all that.
But 100 modules is a convenient place to stop and take stock, and I hope that those of you who have benefitted from my modules, programs or writing about Perl will forgive me a certain spot of self-indulgence as I look back over my CPAN career, especially since I feel that the diversity of modules that Ive produced is a good indication of the diversity of what can be done with Perl.
Lets begin, then, with some humble beginnings, and then catch up on recent history.
The Embarrassing Past
Contrary to popular belief, I was not always a CPAN author. I started writing modules in 1998, immediately after reading the first edition of the Perl Cookbook - yes, you can blame Nat and Tom for all this. The first module that I released was Tie::DiscoveryHash, since Id just learnt about tied hashes. As with many of my modules, it was an integral part of another software project which I actually never finished, and now cant find.
The first module that I ever wrote (but, by a curious quirk of fate, precisely the fiftieth module I released) was called String::Tokeniser, which is still a reasonably handy way of getting an iterator over tokenising a string. (Someone recently released String::Tokenizer, which makes me laugh.) This too was for an abortive project, webperl, an application of Don Knuths WEB system of structured documentation to Perl. However, given the code quality of these two modules, its perhaps just as well that the projects never saw the light of day.
There are a few other modules Id rather like to forget, too. Devel::Pointer was a sick joke that went badly wrong - it allowed people to use pointers in Perl. Some people failed to notice that referring to memory locations directly in an extremely high-level language was a dangerous and silly thing to do, and actually used the damned thing, and I started getting requests for support for it. Then at some point in 2001, when I should really have known better, I developed an interest in Microsofts .NET and the C# language, which I still think is pretty neat; but I decided it might be a good idea to translate the Mono projects tokenizer and parser into Perl, ending up with C::Sharp. I never got around to doing the parser part, or indeed anything else with it, and so it died a lonely death in a dark corner of CPAN. GTK::HandyClist was my foray into programming graphical applications, which started and ended there.
Bundle::SDK::SIMON was actually the slides from a talk on my top ten favourite CPAN modules - except that this changes so quickly over time, it doesnt really make much sense any more.
Finally, Array::FileReader was an attempt to optimize a file access process. Unfortunately, my "optimization" ended up introducing more overheads than the naive solution. It all goes to show. Since then, Mark-Jason Dominus, another huge influence in the development of my CPAN career, has written Tie::File, which not only has a better name but is actually efficient too.
The Internals Phase
1999-2000 were disastrous years for me personally but magnificent years Perl-sonally. Stuck in a boring job and a tiny flat in the middle of Tokyo, I had plenty of time to get stuck into more Perl development. I felt that getting involved with perl5-porters would be a good way of gettting to know more about Perl, and so I needed a hobby horse - an issue of Perls development that I cared about. Since I was in Japan and working a lot with non-Latin text, Unicode support seemed a good thing to work on, and so Unicode::Decompose appeared, while I fixed up a substantial part of the post-5.6 core Unicode support.
Id recommend this way to anyone who wants to get more involved in the Perl community, although I was very lucky in terms of who else happened to be around at the time: Gurusamy Sarathy was extremely gracious in helping me turn my fledgling C code into something fit for the Perl core, and he also helped me understand the perl5-porters etiquette (yes, there was some at the time) and what makes a good patch, while Jarkko Hietaniemi was always good for suggestions of interesting things for keen people to work on. Seriously, get involved. If I can do it, anyone can.
Anyway, this fixation with understanding the Perl 5 internals, and especially the Perl 5 compiler, (due to yet another of my Perl influences, the great Malcolm Beattie) led to quite a torrent of modules, from ByteCache, an implementation of just-in-time compilation for Perl modules, through B::Flags and B::Tree to help visualising the Perl op tree, to uninit, B::Generate, optimizer and B::Utils for modifying it.
Perl About The House
Now we abandon chronological order somewhat and take a look at the various areas in which Ive used Perl. One of these areas has been the automation of everyday life: checking my bank balance with Finance::Bank::LloydsTSB (the first Perl module to interface to personal internet banking, no less) and my phone bill with a release of Tony Bowdens Data::BT::PhoneBill.
Finance::Bank::LloydsTSB was meant to go with Finance::QIF, my Quicken file parser, to produce another now-abandoned idea, a Perl finances manager. It seemed that Im only capable of producing modules, not full standalone applications - or at least, it seemed that way until I produced Bryar, my blogging software, based on the concepts from Rael Dornfests blosxom and beginning my adventures with Andy Wardleys Template Toolkit. Bryar also tuned me in to the Model-View-Controller framework idea, of which more later.
Another project I briefly played with was a personal robot, using the Sphinx/Festival speech handling and recognition modules from Cepstral and Kevin Lenzo. I didnt have X10, so I couldnt shout "lights" into the air in a wonderfully scifi way, but I could shout "mail" and have a summary of my inbox read to me, "news" to get the latest BBC news headlines, and "time" to hear the time. Of course, getting computers to tell the time nicely takes a little bit of work. I dont like "Its eleven oh-three pee em", since thats not what someone would say if you asked them the time. I wanted my robot to say "Its just after eleven", and thats what Time::Human does. Shame about the localisation.
Download (0.014MB)
Added: 2006-06-08 License: Perl Artistic License Price:
1233 downloads
NoScript 1.1.6.08
NoScript offers extra protection for your Firefox. more>>
NoScript offers extra protection for your Firefox: NoScript allows JavaScript, Java (and other plugins) only for trusted domains of your choice (e.g. your home-banking web site).
This whitelist based pre-emptive blocking approach prevents exploitation of security vulnerabilities (known and even unknown!) with no loss of functionality... Experts will agree: Firefox is really safer with NoScript.
Main features:
- this means that scripts are blocked for the current site
- Partially Allowed Icon - this means scripts are allowed for some of the URLs of the current site (it happens when there are multiple frames, and scripts are enabled in some of them and disabled in other ones)
- Allowed Icon - this means that script execution is allowed for the current site
- Globally Allowed Icon - this means that scripts are globally allowed (why did you decide to browse without any protection??!)
<<lessThis whitelist based pre-emptive blocking approach prevents exploitation of security vulnerabilities (known and even unknown!) with no loss of functionality... Experts will agree: Firefox is really safer with NoScript.
Main features:
- this means that scripts are blocked for the current site
- Partially Allowed Icon - this means scripts are allowed for some of the URLs of the current site (it happens when there are multiple frames, and scripts are enabled in some of them and disabled in other ones)
- Allowed Icon - this means that script execution is allowed for the current site
- Globally Allowed Icon - this means that scripts are globally allowed (why did you decide to browse without any protection??!)
Download (0.14MB)
Added: 2007-07-27 License: MIT/X Consortium License Price:
823 downloads
HBCI4Java 2.5.0 RC9
HBCI4Java is a Java library for the HBCI home banking interface. more>>
HBCI4Java is a Java library for the HBCI home banking interface. HBCI4Java project supports almost all aspect of the HBCI versions 2.01, 2.1, 2.2, HBCI+ and FinTS-3.0 (with PIN/TAN support).
Its API is very application-oriented, so no knowledge about HBCI is required. The HBCI client package can be used to develop applications using HBCI features.
The HBCI server package can be used to develop your own HBCI servers. This may be useful for credit institutes or software developers who want to setup their own HBCI test server.
Enhancements:
- Added sample files to show how to use HBCIBatch tool.
- Solved some problems with the MT940 parser (for statement of account).
<<lessIts API is very application-oriented, so no knowledge about HBCI is required. The HBCI client package can be used to develop applications using HBCI features.
The HBCI server package can be used to develop your own HBCI servers. This may be useful for credit institutes or software developers who want to setup their own HBCI test server.
Enhancements:
- Added sample files to show how to use HBCIBatch tool.
- Solved some problems with the MT940 parser (for statement of account).
Download (1.4MB)
Added: 2006-06-14 License: GPL (GNU General Public License) Price:
1263 downloads
cl33n 1.1
cl33n is a clean, free, safe, Linux-based web browsing environment for any PC. more>>
cl33n is a clean, free, safe, Linux-based web browsing environment for any PC. With cl33n, you have a virus-free, spyware-free, personal environment for internet banking, emailing, social networking and anything else you normally do online.
Almost all viruses & trojans are written for Windows so are incompatible with Linux systems like cl33n.
cl33n does not make any changes to the computer so you can use it safely on any PC: your privacy is protected.
<<lessAlmost all viruses & trojans are written for Windows so are incompatible with Linux systems like cl33n.
cl33n does not make any changes to the computer so you can use it safely on any PC: your privacy is protected.
Download (104.3MB)
Added: 2007-05-08 License: GPL (GNU General Public License) Price:
900 downloads
Secleted [ 0 ] software to compare
- Page: 1 of 2
- 1
- 2
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above banking search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed