Saturday, April 09, 2016

Quick Updates and Random Thoughts

Web-Based Performance Management Information System

I have to abandon the Google Fusion Tables-based performance information system as it is limited. Of course, that is not the only reason. The other, and real reason is that I got to actually make my own PHP-MySQL-based system. Although it is only at its initial stage (my most important achievement is a username-password protection system that ensures no page is accessible without proper login), I feel confident that I can achieve my intended system.... although when is another question.

Running and Performance Management 

Running is really a good exercise. But it does not only help one in physical fitness. It also helps me in approaching personal performance management.

When I run, I do not run alone. I do not run with a group, but the place I run is an ideal running area, with vehicles' speed in check, paved road, and less vehicles due to the security setup of the area.

Nonetheless, while I see other people run, I am reminded of the following to help me keep my pace, and ensure sustainability in my performance:
  1. Keep my own comfortable pace. Focus on the distance of the run without incurring injuries.
  2. Focus on my own performance. Do not compete against other runners. Other runners may have different reasons for running, which drives the way they run. I know why I run, and I will try to sustain it. 
  3. Focus on the run. Do not think about other things. When I do, I slow down, and my mental activity increases fatigue.
  4. Know how to prioritize. If you want to finish a big thing, you may need to abandon or remove secondary objectives. For example, as I hope to finish a 42-kilometer run in October, I am less inclined to target a sub-2 hour 21-kilometer. It's okay for me to finish it in 2 hours and 15 minutes, just five minutes faster than my last record. 
  5. If you want to achieve something, do not compete with someone else. Compete against your own limitations, so that you improve on the measures that you need to and not based on some else's measures.
These are just some of my thoughts on comparing performance management with running.

New Spreadsheet Function Learned

So I learned how to use spreadsheet functions INDEX and MATCH to do two-dimensional or two-factor lookup. I will write about it in my next post in Technology for Teachers blog.

Friday, March 04, 2016

Introduction to Database and Database Management

I'm thinking of organizing a brief knowledge-sharing session about database next week. I hope to share what are the opportunities in having a "real database." Below my preliminary syllabus:

Learning Outcome: At the end of this 2-hour session, participants are expected to have a working knowledge and appreciation of database, and database design and management, to help them in efficient data collection, storage, reporting, and ultimately, decision-making.
                     
Among others, the session will allow the participant to answer the following questions and apply that knowledge to their own situation/requirements:
  1. What is a database?
  2. What are the uses of database (aside from getting stored data)?
  3. How should we design databases (and why so)?
  4. What are the available tools and techniques in processing data in a database?
During the session, participants will analyze available data forms or table reports to design a data collection tool that will allow the user use and “re-use” data.

Methods of Instruction: Guided discussion, paper form analysis, and tool application

Logistical Requirements:
  • Projector and laptop with internet connection and spreadsheet application
  • Sample report forms for analysis
  • Participants may bring their own laptop for exercises
Session Participants: To maximize the learning experience, it is recommended that participants be limited to those who:
  • Use database-like applications (Microsoft Excel) on a regular basis; or
  • Use matrix reports from agencies that want to reuse data.
Session Size: Due to the interactive nature of this session, a maximum size of 10 is recommended.

Friday, November 13, 2015

Database Design for Non-IT People

As a member of the Quality Assurance Team and a member auditor of our Internal Audit Committee (both of which are component entities of our Quality Management System), I observed that there are a lot of offices which maintain some form of database. And that is good.

However, as someone who was trained in database systems (however, this is by no means saying that I am an expert on the subject), I also observed that their databases are mostly 'designed' to respond to only one particular concern, which is storage of data and ensuring that they can find a particular type or instance of data for each particular record.

That in itself is not a bad thing, however, I find myself wishing that they would enhance their database so that it can be more robust, more flexible, and has opportunity for scaling up and integration.

Some of the staff who thought of creating an electronic database used Excel, a powerful spreadsheet application, are conversant with advanced knowledge of the application, which means they know more than simply typing values there and using basic arithmetic formulas using absolute and relative references.  However, choosing Excel, or other spreadsheet application like LibreOffice Sheets, to use as a database management system is an indication that the choice did not consider the long-term opportunities of making other management decisions using the same existing data by merely organizing the data properly.

Still, I think that advanced skills in spreadsheet applications is an indicator that they can easily understand the basic concepts of database management.

Considering, this, I really want to share what I know about database management to these people so that they can be more conversant opportunities in proper database design so that they can easily find the information and knowledge they want from the data already in their computers and files.

I might post some future articles on the matter so that they may be able to read it, in case they want to learn and we just don't have the time to do it during office hours.

Saturday, September 12, 2015

Update on the Google-based Performance Information System

So after going through three different options (LibreOffice Base/Microsoft Access, Google Fusion Tables, and developing my own local system) in creating our performance information system, I finally settled in using Google Fusion Tables.

Previously, I was afraid that the system would be riddled with information integrity and access restriction problems. For example, I was afraid that one unit can enter data for another unit, which should not be the case. To mitigate that problem, I created an internal key reference system. What it was supposed to do was to present to the oversight office his own reference key and the submitter's secret key. If the keys are the same, then the oversight office should consider the record valid and he or she can rate the output recorded. However, if the keys are different, he or she can check with the supposed unit why the keys are different before giving a rating.

Personally, I was not keen in that system being observed. The oversight offices are "very busy" people. They would not bother themselves with security procedures. So I thought that our unit would constantly monitor the keys by creating a merge of the key reference table and the output submission table (I know, the references might be difficult to understand. It's by design.).

However, just today, I learned a way to altogether remove the key reference system. Instead, the access would automatically identify the submitter as the user based on his or her Google login.

The process not only removed the threat of shared access rights to create records, but also removed two fields (columns) in the unit's view of the database.

It was brilliantly simple, and more secure.

Now time to go back to work.

Saturday, September 05, 2015

Learning PHP and MySQL Fundamentals - Day 1

So I attended my first day of PHP MySQL short course training yesterday, It is an introductory course, with my intent to get as much practice on using PHP and complement my own study reading online sources.

Actually, I was not sure if I would like to enroll in the basics class, as I thought that based on the outline, I have covered 80% of the content. Anther reason was I got confused with the price posted in the website. It says that the regular training fee is P16,000, while Early Bird Government participants pay P8,000. While I am a government employee, I was only registering (i.e., paying) on the first day of the training, definitely not an "early bird," which the website defined as a participant who has to pay the full registration fee two weeks before the start of the class.

I am glad the staff said that I can avail the P8,000 (subject to presentation of relevant documents, which I promptly presented). And I am glad I still did enroll in the basic class.

While a cursory reading of the outline tells me that I got 80% of the content based on my personal readings, the training did expose me to other practical challenges that I did not get from the two PHP-MySQL-Apache books I was reading.

The assignment (which I only got to research today) also helped me to keep the concepts in my mind. As a programming class, it also helped me appreciate how it can be applied in everyday life (although not the programming language, but rather the logic and process). One personally funny example the trainer gave about LOOP was "If anak ng presidente, derecho na. Kapag hindi, gawin mo ang mga procedures na ito."

At first, I felt defensive, considering where I work. But then, I had to ignore it. I am neither the President nor a child of one. And while I don't want to say it is true, it is an example that they may have found real in their experience.

But for me, the appreciation of where programming can be applied is helpful.

Looking forward to the next session, which will be after two weeks.