Best Approach for a Quick & Dirty Desktop Application
I have decided to let the geeks out there solve a problem for me. The problem is writing a quick and dirty solution to a temporary problem. I have an idea but I am interested to see what others have to say.
The application is for some not very fancy record keeping. You could call it a payroll system but it has few of the characteristics of a real payroll system. Also, it is temporary—in a few months it will be no longer needed. It is for the Geek Ranch project and is to keep track of "casual labor".
We have anywhere up to 50 people working on various construction projects. They are paid (in cash) every two weeks. Their pay is based on days worked during the period at a daily rate. The "twists and turns" are minimal (getting paid for seven days if they work six, for example) but that can pretty much be dealt with by hand.
There are reasons this becomes a database project rather than just a spreadsheet.
- We want some sort of error checking on data entry and it seems easier with a database
- There are a couple of balances that accrue (vacation and a "13th month" pay that accumulates and gets paid out once a year). We want to keep track of this and also print info to put in the General Ledger that reflects the wages we pay out plus the liabilities we are accumulating.
For data, I see three record types:
- Employee—name, ID number, start date, current pay rate, ...
- Pay—The data we enter each two weeks.
- Comment—General-purpose info that just includes a timestamp and a comment field.
Transactions are limited to:
- Enter/update employee record
- Add/update a pay record
- Add a comment record
Reports consist of:
- Generate a pay report (selecting by a particular person and date or all on a particular date)
- Payday ledger showing who got paid what plus the liability updates
- Employee summary showing the employee info and all related records
By "report" there is absolutely fancy here. This can be just fixed width characters on a piece of paper. Again, think temporary.
The person using this will be at a KDE desktop. They are not a computer geek (and, if it matters, they only understand Spanish). The whole program can be running on their workstation (only one person really needs to access this) or it can use a web interface from a local server. Postgres is running on a server (to support another system) or sqlite could be used.
If there is code to be written, I would prefer Python but other possibilities (from Awk to PHP) exist.
That's the story. Tell me the "best way" to do it and, if possible, why your way is best.
- Free Today: September Issue of Linux Journal (Retail value: $5.99)
- The Tiny Internet Project, Part I
- Machine Learning with Python
- Bitcoin on Amazon! Sort of...
- Download "Linux Management with Red Hat Satellite: Measuring Business Impact and ROI"
- Android Browser Security--What You Haven't Been Told
- Epiq Solutions' Sidekiq M.2
- Securing the Programmer
- Nativ Disc
Pick up any e-commerce web or mobile app today, and you’ll be holding a mashup of interconnected applications and services from a variety of different providers. For instance, when you connect to Amazon’s e-commerce app, cookies, tags and pixels that are monitored by solutions like Exact Target, BazaarVoice, Bing, Shopzilla, Liveramp and Google Tag Manager track every action you take. You’re presented with special offers and coupons based on your viewing and buying patterns. If you find something you want for your birthday, a third party manages your wish list, which you can share through multiple social- media outlets or email to a friend. When you select something to buy, you find yourself presented with similar items as kind suggestions. And when you finally check out, you’re offered the ability to pay with promo codes, gifts cards, PayPal or a variety of credit cards.Get the Guide