a2WARE
Sunday, March 17, 2013
Thursday, April 14, 2011
Tutorials
1
Custom Wordpress Plugin
http://net.tutsplus.com/tutorials/wordpress/creating-a-custom-wordpress-plugin-from-scratch/
2 SEO TOOLS
http://www.tizag.com/SEOTutorial/seo-tools.php
3. SEO TOOLS 2
http://tools.seobook.com/
4. Google Analytics
GOOGLE ANALYTICS
Google Analytics shows you how people found your site, how they explored it, and how you can enhance their visitor experience. With this information, you can improve your website return on investment, increase conversions, and make more money on the web. This guide can help you familiarize yourself with the main features of Google Analytics. To start using Analytics, sign in with your Google Account.
from:
http://www.google.com/support/analytics/bin/answer.py?answer=55591
FREE WEB SITES :
Webs.com
Weebly.com
Custom Wordpress Plugin
http://net.tutsplus.com/tutorials/wordpress/creating-a-custom-wordpress-plugin-from-scratch/
2 SEO TOOLS
http://www.tizag.com/SEOTutorial/seo-tools.php
3. SEO TOOLS 2
http://tools.seobook.com/
4. Google Analytics
GOOGLE ANALYTICS
Google Analytics shows you how people found your site, how they explored it, and how you can enhance their visitor experience. With this information, you can improve your website return on investment, increase conversions, and make more money on the web. This guide can help you familiarize yourself with the main features of Google Analytics. To start using Analytics, sign in with your Google Account.
from:
http://www.google.com/support/analytics/bin/answer.py?answer=55591
FREE WEB SITES :
Webs.com
Weebly.com
Friday, January 14, 2011
Sunday, August 22, 2010
Thursday, May 27, 2010
Sunday, March 28, 2010
Saturday, March 27, 2010
Friday, March 26, 2010
Tuesday, February 09, 2010
REST Basic Tips
http://www.recessframework.org/page/towards-restful-php-5-basic-tips
Monday, February 08, 2010
Google Maps useful Links
How to find Coordinats
http://www.online-tech-tips.com/computer-tips/find-longitude-latitude/
Geocoding utility
http://gmaps-samples.googlecode.com/svn/trunk/geocoder/singlegeocode.html
Geocoding Addresses with PHP MySQL
http://code.google.com/apis/maps/articles/phpsqlgeocode.html#geocodephp
Geocoding WEBSERVICES
http://groups.google.com/group/Google-Maps-API/web/resources-non-google-geocoders?pli=1
http://www.online-tech-tips.com/computer-tips/find-longitude-latitude/
Geocoding utility
http://gmaps-samples.googlecode.com/svn/trunk/geocoder/singlegeocode.html
Geocoding Addresses with PHP MySQL
http://code.google.com/apis/maps/articles/phpsqlgeocode.html#geocodephp
Geocoding WEBSERVICES
http://groups.google.com/group/Google-Maps-API/web/resources-non-google-geocoders?pli=1
Wednesday, February 03, 2010
Monday, January 11, 2010
Thursday, November 26, 2009
Monday, July 20, 2009
Sunday, April 19, 2009
Friday, April 17, 2009
Friday, April 10, 2009
PhotoScape
I have just downloaded and installed a copy of PhotoScape, which others found to be a real great photo/image editing tool.
also FastSTONE
also FastSTONE
Tuesday, March 24, 2009
Sunday, March 22, 2009
To Do
To DO:
1. Drupal admin/module programming/theme
2. CodeIgniter
3. JQuery
4. Ajax
1. Drupal admin/module programming/theme
2. CodeIgniter
3. JQuery
4. Ajax
Tuesday, March 17, 2009
NingID and OpenID
The Ning ID authentication system lets you choose an email address and password once and use it to join or sign into any social network that uses the Ning ID.
When you create a Ning ID, you can also add a set of basic details and your photo to your Ning ID account. These details are then pre-populated whenever you join a new social network that uses the Ning ID for authentication. It also enables you to keep track of your friends and messages across all the social networks that use it.
You can sign in with your Ning ID email address and password whenever you see this symbol:
When you create a Ning ID, you can also add a set of basic details and your photo to your Ning ID account. These details are then pre-populated whenever you join a new social network that uses the Ning ID for authentication. It also enables you to keep track of your friends and messages across all the social networks that use it.
You can sign in with your Ning ID email address and password whenever you see this symbol:
Sunday, March 15, 2009
Saturday, March 14, 2009
Information Architecture
Information Architecture for the World Wide Web
Chapter 2
Chapter 2
Tuesday, March 10, 2009
Monday, March 09, 2009
Things To Do - Again - March 10, 2009
About GUIDE WRITING
http://beaguide.about.com/training.htm
Add GoogleMaps to Joomla
Integrating Google Maps
Integrating Google Maps with the Web
Performing HTTP GeoCoding
http://www.developer.com/tech/article.php/3621981
Introducing GEOCoding
http://www.developer.com/services/article.php/3615681
Ajax Starter Kit
http://www.htmlgoodies.com/beyond/webmaster/toolbox/article.php/3749331
The iPhone as a Tool
http://www.htmlgoodies.com/beyond/webmaster/toolbox/article.php/3806401
PHP Programs to prevent MySQL Injection
http://www.devshed.com/c/a/PHP/PHP-Programs-to-Prevent-MySQL-Injection-or-HTML-Form-Abuse/
Study
1. Google Analytics and SEO Webmarketing
2. extJS
3. CodeIgniter
4. Jquery
5. Adobe AIR for extJS
6. AJAX
Pet Projects:
1. online booktsore
2. bentahan.com
3. bahayatlupa.com
4. kapresyohan.com
http://beaguide.about.com/training.htm
Add GoogleMaps to Joomla
Integrating Google Maps
Integrating Google Maps with the Web
Performing HTTP GeoCoding
http://www.developer.com/tech/article.php/3621981
Introducing GEOCoding
http://www.developer.com/services/article.php/3615681
Ajax Starter Kit
http://www.htmlgoodies.com/beyond/webmaster/toolbox/article.php/3749331
The iPhone as a Tool
http://www.htmlgoodies.com/beyond/webmaster/toolbox/article.php/3806401
PHP Programs to prevent MySQL Injection
http://www.devshed.com/c/a/PHP/PHP-Programs-to-Prevent-MySQL-Injection-or-HTML-Form-Abuse/
Study
1. Google Analytics and SEO Webmarketing
2. extJS
3. CodeIgniter
4. Jquery
5. Adobe AIR for extJS
6. AJAX
Pet Projects:
1. online booktsore
2. bentahan.com
3. bahayatlupa.com
4. kapresyohan.com
Sunday, March 08, 2009
WAMP, XAMPP
WAMP Server
XAMP
Uniform Server
MySQL links:
GUI Tools
Optimizing MySQL
optimizing
Optimizing MySQL for Drupal
CodeIgniter tutorials
codeigniter
XAMP
Uniform Server
MySQL links:
GUI Tools
Optimizing MySQL
optimizing
Optimizing MySQL for Drupal
CodeIgniter tutorials
codeigniter
Saturday, March 07, 2009
How to Video Edit
Edit Using Microsoft Windows Movie Maker
1. Open your Windows Movie Maker. Open your file or movie. Then click “Import video”; it will take a few moments to import.
2. Click and drag the different sets of clips you've shot down to the Storyboard, which is located at the bottom of the window.
3. Add video effects. Click “Video Effects” on the left side of the window. Drag what effect you want and put it the star in the corner of the Clip.
4. Add transitions. Select the “View Video Transitions” from the left panel. Drag them down to the “Storyboard”, but put them in the middle box. You can view the transitions by clicking on them and watching them on the screen to the left.
5. Add music or cut short the clips by clicking the “Timeline” also at the bottom of the screen.
6. When you want to cut some time from the Clip, click the half triangle at the side of the clip, and then you can move how long you want the scene.
7. Mute the camera if you're going to make a music video; you don’t want anyone to hear that part, just the music. Then, go to “Import Audio or Music” select a song. Then drag it down to the “TimeLine” You can also cut time or make a short sound from clicking the triangle and dragging to make it as long as you want, you can have just one word, chorus or just the whole song.
8. Add title or credits by clicking on the appropriate link on the left panel. To add credits, there is a big empty bar on the form; you should put either the title of the movie, or credits. The left side of the form should go positions, like Director, or Producer, or the character. Then, the right side, will be the names of the people that play or direct in their position.
9. Click the view “timeline” and you should see the time line with the song, the title, the clips, and the effects and transitions. Then, you can view the movie that you have created by pressing play on the left panel with the screen.
10. If you are satisfied, click “Save to my computer” or if you have a CD/DVD you could also save it to that, and it should again, take a few moments to save, then you are done with your movie.
Source: http://www.wikihow.com/Operate-Windows-Movie-Maker
1. Open your Windows Movie Maker. Open your file or movie. Then click “Import video”; it will take a few moments to import.
2. Click and drag the different sets of clips you've shot down to the Storyboard, which is located at the bottom of the window.
3. Add video effects. Click “Video Effects” on the left side of the window. Drag what effect you want and put it the star in the corner of the Clip.
4. Add transitions. Select the “View Video Transitions” from the left panel. Drag them down to the “Storyboard”, but put them in the middle box. You can view the transitions by clicking on them and watching them on the screen to the left.
5. Add music or cut short the clips by clicking the “Timeline” also at the bottom of the screen.
6. When you want to cut some time from the Clip, click the half triangle at the side of the clip, and then you can move how long you want the scene.
7. Mute the camera if you're going to make a music video; you don’t want anyone to hear that part, just the music. Then, go to “Import Audio or Music” select a song. Then drag it down to the “TimeLine” You can also cut time or make a short sound from clicking the triangle and dragging to make it as long as you want, you can have just one word, chorus or just the whole song.
8. Add title or credits by clicking on the appropriate link on the left panel. To add credits, there is a big empty bar on the form; you should put either the title of the movie, or credits. The left side of the form should go positions, like Director, or Producer, or the character. Then, the right side, will be the names of the people that play or direct in their position.
9. Click the view “timeline” and you should see the time line with the song, the title, the clips, and the effects and transitions. Then, you can view the movie that you have created by pressing play on the left panel with the screen.
10. If you are satisfied, click “Save to my computer” or if you have a CD/DVD you could also save it to that, and it should again, take a few moments to save, then you are done with your movie.
Source: http://www.wikihow.com/Operate-Windows-Movie-Maker
Thursday, March 05, 2009
thoughts
contentrum.com
Hi. I specialize in designing and developing content management systems (CMS). I first
encountered the term when I was working for a US-based consulting company specializing in
Vignette, a CMS suite for enterprise companies who have a lot of publishing needs. I learned
about workflows, approvers, etc which later were terms I encountered in succeeding project
engagements later.
Right now, I'm supporting systems based on Drupal, Wordpress, Php, Mysql. That includes
setting up or installing, customizing and programming on those platforms.
Portfolio :
MaradjaoMagbalantay.Com - a wordpress
- installed Wordpress
- moved a wordpress hosted site to a domain-based one
(exported and imported)
-----
I'm antisocial, killjoy. I don't like to pretend what I am not. I prefer chatting, meeting up
with friends I've made. I'd rather spend my time researching on something, working at a lab,
writing, programming, composing. If I like to, I'd like to "socialize" with friends singing
karaoke, observing, etc. I'm not really a sports guy.
I don't like to talk about religion. I strive hard to live my spirituality. I only discuss
these things with those I'm supposed to discuss it with. First of all, should be my family or
anyone of my blood-relatives, second would be my friends. But to talk about it with
strangers, is something I wouldn't want to do. I can not force. I can only talk about these
things in a book or through an essay or a poem.
Hi. I specialize in designing and developing content management systems (CMS). I first
encountered the term when I was working for a US-based consulting company specializing in
Vignette, a CMS suite for enterprise companies who have a lot of publishing needs. I learned
about workflows, approvers, etc which later were terms I encountered in succeeding project
engagements later.
Right now, I'm supporting systems based on Drupal, Wordpress, Php, Mysql. That includes
setting up or installing, customizing and programming on those platforms.
Portfolio :
MaradjaoMagbalantay.Com - a wordpress
- installed Wordpress
- moved a wordpress hosted site to a domain-based one
(exported and imported)
-----
I'm antisocial, killjoy. I don't like to pretend what I am not. I prefer chatting, meeting up
with friends I've made. I'd rather spend my time researching on something, working at a lab,
writing, programming, composing. If I like to, I'd like to "socialize" with friends singing
karaoke, observing, etc. I'm not really a sports guy.
I don't like to talk about religion. I strive hard to live my spirituality. I only discuss
these things with those I'm supposed to discuss it with. First of all, should be my family or
anyone of my blood-relatives, second would be my friends. But to talk about it with
strangers, is something I wouldn't want to do. I can not force. I can only talk about these
things in a book or through an essay or a poem.
Wednesday, March 04, 2009
To Do
1. Mastery of Drupal, Joomla, CodeIgniter
CMS, Frameworks based on PHP/MySQL
2.
CMS, Frameworks based on PHP/MySQL
2.
Monday, March 02, 2009
Sunday, March 01, 2009
Developing IPhone Apps using Java
http://www.youtube.com/watch?v=s8nMpi5-P-I
Friday, February 27, 2009
analytics
Analytis for iPhone
Facebook goes Open Source
http://www.tuaw.com/2009/02/05/first-look-analytics-for-iphone/
Facebook goes Open Source
http://www.tuaw.com/2009/02/05/first-look-analytics-for-iphone/
Thursday, February 26, 2009
Drupal Links
Drupal Handbook
Detailed Requirements
Drupal vs Joomla
Drupal CACHING
In order to enable caching in Drupal, log in as administrator and go to Site Configuration >
Performance.
Under Caching mode: select Normal (recommended for production sites, no side effects).
Under Block cache: select Enabled (recommended).
Click Save configuration to save the changes.
Detailed Requirements
Drupal vs Joomla
Drupal CACHING
In order to enable caching in Drupal, log in as administrator and go to Site Configuration >
Performance.
Under Caching mode: select Normal (recommended for production sites, no side effects).
Under Block cache: select Enabled (recommended).
Click Save configuration to save the changes.
Wednesday, February 25, 2009
from A. Abarentos
Broadcasting/Live Video Service
Mogulus
RV - TNT
ContinuousTraveler - Tom Donaldson
Drag Fools
DragFools
Groups Drupal.Org
Mogulus
RV - TNT
ContinuousTraveler - Tom Donaldson
Drag Fools
DragFools
Groups Drupal.Org
Monday, February 23, 2009
Sunday, February 22, 2009
Saturday, February 21, 2009
CodeLobster PHP IDE
Dear Codelobster Customer!
We would like to inform you that Codelobster PHP Edition FREE Version 3.0 is available for downloading from:
http://www.codelobster.com/download/CodelobsterPHPEditionSetup.exe
What's new in this version?
* HTML code inspector
* HTML preview window
* Code collapsing (folding)
* Incremental find
* Smarty plug-in improving
* WordPress plug-in:
Autocomplete for WordPress Template Tags and Functions with Arguments
Context and Dynamic Help
* Joomla plug-in:
Autocomplete for Joomla Framework
Context and Dynamic Help
* New module wizard for Drupal plug-in
* Update Drupal for versions 6.6 and 5.12
* PHP parsing:
support phpDoc
support parent::
support self::
support TODO blocks
* Inprove autocomplete DOM-model objects for JavaScript
* HTML special characters highlighting
* Add support Chrome browser
* UTF autodetect
* Fixed bugs:
Some hot keys problems
Find dialog problems
The full list of features is located here: http://www.codelobster.com/details_phped.html
Also we invite you to visit our forum http://codelobster.com/forum/index.php
Please, inform us of all found bugs and occurred problems: support@codelobster.com
Sincerely yours,
Codelobster team
We would like to inform you that Codelobster PHP Edition FREE Version 3.0 is available for downloading from:
http://www.codelobster.com/download/CodelobsterPHPEditionSetup.exe
What's new in this version?
* HTML code inspector
* HTML preview window
* Code collapsing (folding)
* Incremental find
* Smarty plug-in improving
* WordPress plug-in:
Autocomplete for WordPress Template Tags and Functions with Arguments
Context and Dynamic Help
* Joomla plug-in:
Autocomplete for Joomla Framework
Context and Dynamic Help
* New module wizard for Drupal plug-in
* Update Drupal for versions 6.6 and 5.12
* PHP parsing:
support phpDoc
support parent::
support self::
support TODO blocks
* Inprove autocomplete DOM-model objects for JavaScript
* HTML special characters highlighting
* Add support Chrome browser
* UTF autodetect
* Fixed bugs:
Some hot keys problems
Find dialog problems
The full list of features is located here: http://www.codelobster.com/details_phped.html
Also we invite you to visit our forum http://codelobster.com/forum/index.php
Please, inform us of all found bugs and occurred problems: support@codelobster.com
Sincerely yours,
Codelobster team
Thursday, February 19, 2009
PHP Forums
1. V-Bulletin used by BukasPalad
2. PHPBBForum
Tutorials:
PHP Tutorials
Free Hosting
MooTools - another JavaScript UI Framework
1. V-Bulletin used by BukasPalad
2. PHPBBForum
Tutorials:
PHP Tutorials
Free Hosting
MooTools - another JavaScript UI Framework
Wednesday, February 18, 2009
Monday, February 16, 2009
Friday, February 13, 2009
Tools for PHP Developer
IDE Tools :
1. CodeLobster -- freee
2. PHP Articles
IDE
1. Zend Studio
2. phpCoder
3. Eclipse
PHP User Groups
PHP Philippines
Frameworks :
1. UI
- extJS
MVW Framework
1. CodeIgniter
2. CakePHP
CMS
1. Wordpress
2. JOOMLA
3. Drupal (according to Angelo A)
1. CodeLobster -- freee
2. PHP Articles
IDE
1. Zend Studio
2. phpCoder
3. Eclipse
PHP User Groups
PHP Philippines
Frameworks :
1. UI
- extJS
MVW Framework
1. CodeIgniter
2. CakePHP
CMS
1. Wordpress
2. JOOMLA
3. Drupal (according to Angelo A)
Thursday, February 12, 2009
SEO Techniques
http://www.philhosting.net/articles/search-engine-optimization-techniques.html
Tuesday, February 10, 2009
Monday, February 09, 2009
Sunday, February 08, 2009
Sunday, February 01, 2009
Finale vis-a-vis Lily Pond
Finale vis-a-vis Lily Pond, Music by Andrew
Java Music Projects
http://www.softsynth.com/links/java_music.html
Java Music Projects
http://www.softsynth.com/links/java_music.html
Friday, January 02, 2009
Thursday, November 20, 2008
Thursday, October 23, 2008
Thursday, October 16, 2008
Friday, August 29, 2008
Thursday, July 17, 2008
Sunday, March 23, 2008
Monday, August 06, 2007
Friday, July 27, 2007
About Software Development
1. What is Software Development ?
http://softwarecreation.org/2007/what-is-software-development/
2. Software Development is the flow of ideas. The rest is secondary
http://softwarecreation.org/2007/software-development-is-the-flow-of-ideas-the-rest-is-secondary/
3. The Ideal Software Company is Utopia
http://softwarecreation.org/2007/the-ideal-software-company-utopia/
4. The Mind of the Programmer
http://softwarecreation.org/2007/the-mind-of-the-programmer-anatomy-and-3-contradictions/
http://softwarecreation.org/2007/what-is-software-development/
2. Software Development is the flow of ideas. The rest is secondary
http://softwarecreation.org/2007/software-development-is-the-flow-of-ideas-the-rest-is-secondary/
3. The Ideal Software Company is Utopia
http://softwarecreation.org/2007/the-ideal-software-company-utopia/
4. The Mind of the Programmer
http://softwarecreation.org/2007/the-mind-of-the-programmer-anatomy-and-3-contradictions/
Wednesday, November 01, 2006
Sunday, October 29, 2006
Interface and Abstract Class
Program to an Interface -- Doubts
http://forum.java.sun.com/thread.jspa?threadID=735991&messageID=4229194
Interface vs Abstract Class
http://66.102.7.104/search?q=cache:Vsb71X4LhC4J:mindprod.com/jgloss/interfacevsabstract.html+when+do+you+use+a+java+interface&hl=tl&gl=ph&ct=clnk&cd=1&client=firefox-a
http://forum.java.sun.com/thread.jspa?threadID=735991&messageID=4229194
Interface vs Abstract Class
http://66.102.7.104/search?q=cache:Vsb71X4LhC4J:mindprod.com/jgloss/interfacevsabstract.html+when+do+you+use+a+java+interface&hl=tl&gl=ph&ct=clnk&cd=1&client=firefox-a
Thursday, October 26, 2006
Business/Domain Model, Process, Analyst, etc
Taken from: http://iconprocess.com
The Business Object Model is a class diagram describing the key business entities and workers (roles) in the business processes being analyzed.
Domain Model
A domain model captures the most important Artifact: Business Entity abstractions (modeled as UML classes) within the context of the domain. A domain model does not include any business worker definitions. For example, an insurance company's domain model may include classes and relationships for policy, insured, and claim.
The Role: Business Process Analyst is responsible for Activity: Maintain Business Rules.
The Business Process Analyst needs to be familiar with techniques for organizational design, process improvement, technology assimilation, organizational change, and process modeling. This role must identify opportunities for improving business processes, organizational design, and corporate culture.
The Role: Business Designer performs the Activity: Find Business Workers and Entities, focusing only on the entities.
* The Role: Business Process Analyst and Role: Business Designer use it to capture information about key abstractions in the business, and possibly to describe the business processes in detail.
* The Role: Software Designer uses the model as input to developing analysis and design models, including use case realizations.
* The Role: Requirements Analyst and Role: Information Architect use it as input to the common vocabulary used when defining requirements and developing wireframes, respectively.
* All other roles may use this information to understand the project's key concepts.
The Business Object Model is a class diagram describing the key business entities and workers (roles) in the business processes being analyzed.
Domain Model
A domain model captures the most important Artifact: Business Entity abstractions (modeled as UML classes) within the context of the domain. A domain model does not include any business worker definitions. For example, an insurance company's domain model may include classes and relationships for policy, insured, and claim.
The Role: Business Process Analyst is responsible for Activity: Maintain Business Rules.
The Business Process Analyst needs to be familiar with techniques for organizational design, process improvement, technology assimilation, organizational change, and process modeling. This role must identify opportunities for improving business processes, organizational design, and corporate culture.
The Role: Business Designer performs the Activity: Find Business Workers and Entities, focusing only on the entities.
* The Role: Business Process Analyst and Role: Business Designer use it to capture information about key abstractions in the business, and possibly to describe the business processes in detail.
* The Role: Software Designer uses the model as input to developing analysis and design models, including use case realizations.
* The Role: Requirements Analyst and Role: Information Architect use it as input to the common vocabulary used when defining requirements and developing wireframes, respectively.
* All other roles may use this information to understand the project's key concepts.
Tuesday, October 24, 2006
Monday, October 23, 2006
Making the Jump to Subversion
http://www.macdevcenter.com/pub/a/mac/2004/08/10/subversion.html
Sunday, October 22, 2006
PHP and J2EE Links
Php/MySQL Cheat Sheet
http://librenix.com/?inode=7882
Generating Php Code with Elisp
http://librenix.com/?inode=7886
PhP Encryption
http://librenix.com/?inode=9198
Best Practices Coding Style
http://librenix.com/?inode=464
----
Code Testing with JUnit
http://librenix.com/?inode=8473
Apache Geronimo and Spring Framework
http://www-128.ibm.com/developerworks/opensource/edu/os-dw-os-ag-springframe2.html?S_
TACT=105AGX59&S_CMP=GR&ca=dgr-lnxw16GeronimoSpringApp
Eclipse Real-time JVM Analysis
http://librenix.com/?inode=9405
http://librenix.com/?inode=7882
Generating Php Code with Elisp
http://librenix.com/?inode=7886
PhP Encryption
http://librenix.com/?inode=9198
Best Practices Coding Style
http://librenix.com/?inode=464
----
Code Testing with JUnit
http://librenix.com/?inode=8473
Apache Geronimo and Spring Framework
http://www-128.ibm.com/developerworks/opensource/edu/os-dw-os-ag-springframe2.html?S_
TACT=105AGX59&S_CMP=GR&ca=dgr-lnxw16GeronimoSpringApp
Eclipse Real-time JVM Analysis
http://librenix.com/?inode=9405
Wednesday, October 18, 2006
Ahh PHP
Thanks to ATI guys. I discovered that PHP is never sleeping and is not late in the game. If Java follows standards like design patterns, eg. MVC. PHP is quick to adjust and adopt these standards.
For example, CakePHP is a framework for PHP that uses commonly known design patterns like ActiveRecord, Association Data Mapping, Front Controller and MVC.
It's manual is at http://manual.cakephp.org/
I also discovered Code Igniter, an open source web application framework. The URL is http://www.codeigniter.com/user_guide
For example, CakePHP is a framework for PHP that uses commonly known design patterns like ActiveRecord, Association Data Mapping, Front Controller and MVC.
It's manual is at http://manual.cakephp.org/
I also discovered Code Igniter, an open source web application framework. The URL is http://www.codeigniter.com/user_guide
Tuesday, October 17, 2006
What is a UML Domain Model?
UML domain model will relate objects in the system domain to each other. It will define concepts and terms. Objects in the domain model can be:
- Physical objects
- Abstract concept
Basic thoughts on entrepreneurship
Setting up a company is never an easy thing to do. For one thing, it's not about just providing service or selling products but doing so that brings profits to the company as well. Bringing profits to the company is also not an easy thing for it entails a lot of things. Making sales is not tantamount to profits if other things like costs and expenses are not measured or computed, or liabilities are not looked at side by side assets.
In business, not everything is about finance but also taking time to "measure" non-financial matters such as labor, customer acquisition and retention, lead costs, depreciation, cost of getting and retaining manpower, etc.
A lot has been said about the major shift from being employed where one simply focuses on providing service to the customer(to the employer) at a specified period of time. But the moment one moves from being employed to having a business to run, he then takes bigger roles and responsibilities.
In business, not everything is about finance but also taking time to "measure" non-financial matters such as labor, customer acquisition and retention, lead costs, depreciation, cost of getting and retaining manpower, etc.
A lot has been said about the major shift from being employed where one simply focuses on providing service to the customer(to the employer) at a specified period of time. But the moment one moves from being employed to having a business to run, he then takes bigger roles and responsibilities.
Business Analyst and Systems Analyst
From wikipedia:
A business analyst (BA) is responsible for analyzing the business needs of their clients and stakeholders to help identify business problems and propose solutions. Within the systems development life cycle domain, the BA typically performs a liaison function between the business side of an enterprise and the information technology department or external service providers.
Common alternate titles are business systems analyst, systems analyst, and functional analyst, although some organizations may differentiate between the above titles and corresponding responsibilities.
Systems analysis' is the science dealing with analysis of complex, large scale systems and the interactions within those systems. This field is closely related to operations research.
A business analyst (BA) is responsible for analyzing the business needs of their clients and stakeholders to help identify business problems and propose solutions. Within the systems development life cycle domain, the BA typically performs a liaison function between the business side of an enterprise and the information technology department or external service providers.
Common alternate titles are business systems analyst, systems analyst, and functional analyst, although some organizations may differentiate between the above titles and corresponding responsibilities.
Systems analysis' is the science dealing with analysis of complex, large scale systems and the interactions within those systems. This field is closely related to operations research.
Friday, October 13, 2006
Techies and non-techies
There are different kinds of techies that most people are not aware of. The non-techie including our friends, relatives, and casual acquaintances do not have an understanding of the various roles and types of techies. Most often those who do not have an idea have this notion that when someone says he/she works for a computer company (may or may not be a techie) would ask him/her for recommendations regarding the brand or type of computer to buy, or for tips on how to select the best printer or how much the latest LCD monitor is. At other times, when something is wrong with the hardware, like a malfunctioning printer, or system not booting, the techie would be asked for help. I remember a colleague of mine years before who was a senior and technical lead for a software development who didn't know how to operate our company's fax was approached by one of the principals. That friend of mine scratched his head and asked around who among us were familiar with the fax machine.
Not every techie knows about the solution to every kind of computer software and hardware problems. But those who are not techie, don't know that.
Not every techie knows about the solution to every kind of computer software and hardware problems. But those who are not techie, don't know that.
Tuesday, October 10, 2006
What Makes a Good Software Developer?
An article I read recently at Hacknot, titled "Developers are from Mars, Programmers are from Venus” about what it means to be a developer vs. a programmer, raised some interesting discussion points.
The article was rather critical of programmers, who, according to the article, only want to write code, play with new technologies and languages, and consider everything else, an annoying detail that is best avoided as much as possible. Computer programmers, so the article claims, are arrogant, look down on users and intentionally use technical jargon they know will not be understood when they talk to users. Furthermore, they often waste their company’s time and money by engineering overly complex solutions to problems or using non-ideal technologies to solve problems, for no reason other than that it gives them a chance to play with a new language, or technology, or write more complex and interesting code. Developers, on the other hand, care about users and try to explain things to them in terms they can understand, using as little technical jargon as possible, take the time to learn about the problem domain they are working in (accounting, insurance, or whatever), and use the simplest possible solution, even if that solution might not be cool or trendy. In a nutshell, the article claims, "programmers play, developers work”, and goes on to say "it is the developers that you want working in your organization. Programmers are a dime a dozen, but developers can bring real value to a business.”
Whoa. Hold on a second there. First of all, I think it is a huge mistake to try to classify programmers and developers so differently to say that one is from Mars and the other from Venus. In fact, if you talk 20 other developers or programmers, you will probably get 20 different definitions of what the difference is between a developer and a programmer. Why is it so hard to establish a clear distinction? Because in reality, most of us are both developers and programmers.
Many of us started out as programmers. We were interested in programming as an intellectually stimulating pursuit in its own right. What domain we were working in didn’t really matter to us, as long as we were solving problems by writing code. We became developers later on when we got out into the work environment and found out that this kind of work in a typical business environment involved a lot more than just writing code. But in becoming developers, we never abandoned our programmer roots. We still enjoy programming as an intellectual challenge in its own right and enjoy learning new technologies and languages simply because they are something new to learn.
On the other hand, many of us started out as developers. We had a domain specific problem that we needed to solve, and we couldn’t find any existing software to do it, nor could we hire someone else to do it (possibly financial constraints). So we decided we would try to solve it ourselves. We went down to the local bookstore, and picked up a couple of books on programming, and we learned as we went. We were much like any other "do-it-yourselfer” in this respect. Learning programming was a means to an end in order to solve a domain specific problem we needed to solve. However, eventually, we became programmers as well as developers, because we developed a genuine interest in programming as an enjoyable and intellectually stimulating pursuit in its own right. Those of us who didn’t probably didn't become professional software developers. Why? Because software development would not have been an enjoyable activity for us unless we were working on a domain specific problem for which we had a very strong interest. For example, unless we happened to have a passion for the insurance business, we would not have enjoyed working as a software developer for an insurance company, unless we enjoyed the act of programming as an activity in its own right.
So are developers and programmers really that different? Is one from Mars and the other from Venus? I say not at all. And qualities of both developers and programmers are required in order for someone to be good at the task of software development. Is it better to use simpler solutions, even if they are not "cool”? In general, yes. But at the same time, we must be careful that software development does not change from an enjoyable and challenging activity, into a monotonous and tedious task that involves nothing more than dragging and dropping prefabricated pieces onto a canvas to create "plug and play” software. People who enjoy their work are more productive than those who do not. Because of this a pure developer, who is forced to work in problem domains he or she is not particularly interested in, using only the simplest possible solutions which require the least effort to implement, may actually be less productive than a programmer who implements a more complex solution, but enjoys programming as a challenging activity in its own right, even if they are not particularly interested in the problem domain.
I am reminded of a quote from one of the prominent pioneers in our field:
"I think that it's extraordinarily important that we in computer science keep fun in computing. When it started out, it was an awful lot of fun. Of course, the paying customers got shafted every now and then, and after a while we began to take their complaints seriously. We began to feel as if we really were responsible for the successful, error-free perfect use of these machines. I don't think we are. I think we're responsible for stretching them, setting them off in new directions, and keeping fun in the house. I hope the field of computer science never loses its sense of fun. Above all, I hope we don't become missionaries. Don't feel as if you're Bible salesmen. The world has too many of those already. What you know about computing other people will learn. Don't feel as if the key to successful computing is only in your hands. What's in your hands, I think and hope, is intelligence: the ability to see the machine as more than when you were first led up to it, that you can make it more.” -- Alan Jay Perlis (April 1, 1922 - February 7, 1990)
Kind Regards,
Mike Urban
murban@javalobby.org
The article was rather critical of programmers, who, according to the article, only want to write code, play with new technologies and languages, and consider everything else, an annoying detail that is best avoided as much as possible. Computer programmers, so the article claims, are arrogant, look down on users and intentionally use technical jargon they know will not be understood when they talk to users. Furthermore, they often waste their company’s time and money by engineering overly complex solutions to problems or using non-ideal technologies to solve problems, for no reason other than that it gives them a chance to play with a new language, or technology, or write more complex and interesting code. Developers, on the other hand, care about users and try to explain things to them in terms they can understand, using as little technical jargon as possible, take the time to learn about the problem domain they are working in (accounting, insurance, or whatever), and use the simplest possible solution, even if that solution might not be cool or trendy. In a nutshell, the article claims, "programmers play, developers work”, and goes on to say "it is the developers that you want working in your organization. Programmers are a dime a dozen, but developers can bring real value to a business.”
Whoa. Hold on a second there. First of all, I think it is a huge mistake to try to classify programmers and developers so differently to say that one is from Mars and the other from Venus. In fact, if you talk 20 other developers or programmers, you will probably get 20 different definitions of what the difference is between a developer and a programmer. Why is it so hard to establish a clear distinction? Because in reality, most of us are both developers and programmers.
Many of us started out as programmers. We were interested in programming as an intellectually stimulating pursuit in its own right. What domain we were working in didn’t really matter to us, as long as we were solving problems by writing code. We became developers later on when we got out into the work environment and found out that this kind of work in a typical business environment involved a lot more than just writing code. But in becoming developers, we never abandoned our programmer roots. We still enjoy programming as an intellectual challenge in its own right and enjoy learning new technologies and languages simply because they are something new to learn.
On the other hand, many of us started out as developers. We had a domain specific problem that we needed to solve, and we couldn’t find any existing software to do it, nor could we hire someone else to do it (possibly financial constraints). So we decided we would try to solve it ourselves. We went down to the local bookstore, and picked up a couple of books on programming, and we learned as we went. We were much like any other "do-it-yourselfer” in this respect. Learning programming was a means to an end in order to solve a domain specific problem we needed to solve. However, eventually, we became programmers as well as developers, because we developed a genuine interest in programming as an enjoyable and intellectually stimulating pursuit in its own right. Those of us who didn’t probably didn't become professional software developers. Why? Because software development would not have been an enjoyable activity for us unless we were working on a domain specific problem for which we had a very strong interest. For example, unless we happened to have a passion for the insurance business, we would not have enjoyed working as a software developer for an insurance company, unless we enjoyed the act of programming as an activity in its own right.
So are developers and programmers really that different? Is one from Mars and the other from Venus? I say not at all. And qualities of both developers and programmers are required in order for someone to be good at the task of software development. Is it better to use simpler solutions, even if they are not "cool”? In general, yes. But at the same time, we must be careful that software development does not change from an enjoyable and challenging activity, into a monotonous and tedious task that involves nothing more than dragging and dropping prefabricated pieces onto a canvas to create "plug and play” software. People who enjoy their work are more productive than those who do not. Because of this a pure developer, who is forced to work in problem domains he or she is not particularly interested in, using only the simplest possible solutions which require the least effort to implement, may actually be less productive than a programmer who implements a more complex solution, but enjoys programming as a challenging activity in its own right, even if they are not particularly interested in the problem domain.
I am reminded of a quote from one of the prominent pioneers in our field:
"I think that it's extraordinarily important that we in computer science keep fun in computing. When it started out, it was an awful lot of fun. Of course, the paying customers got shafted every now and then, and after a while we began to take their complaints seriously. We began to feel as if we really were responsible for the successful, error-free perfect use of these machines. I don't think we are. I think we're responsible for stretching them, setting them off in new directions, and keeping fun in the house. I hope the field of computer science never loses its sense of fun. Above all, I hope we don't become missionaries. Don't feel as if you're Bible salesmen. The world has too many of those already. What you know about computing other people will learn. Don't feel as if the key to successful computing is only in your hands. What's in your hands, I think and hope, is intelligence: the ability to see the machine as more than when you were first led up to it, that you can make it more.” -- Alan Jay Perlis (April 1, 1922 - February 7, 1990)
Kind Regards,
Mike Urban
murban@javalobby.org
Monday, October 09, 2006
C and I, with OOAD
I've never had an exhilarating and enlightening a talk as I had with C, a colleague, a friend, a former officemate of mine who is now the founder-CEO of the Philippine's premier training and consultancy for Java, with whom I had a chance to sit down and talk over the weekend.
C and I met for a possible partnership by inviting me to be one of the resources for his startup, which I gladly accepted.
Anyway, on the technical side. He brought to mind and made it clear to me the distinction between applying (or imposing) OOAD (Object-Oriented Analysis and Design) methodology for enterprise Java systems/apps development. As I have been espousing for quite some time that Java people should be practitioners of OOAD (if they have not been doing that) as OOAD enforces (you guess it right) object-oriented thinking, as opposed to "function(or method) thinkers" practiced by the school of Oracle developers where most of the logic are done in stored procs, pl/sql statements, etc.
However, C reminded me about time to market as an important (and deciding) criteria for an Enterprise Client, which in most probability, looks for quick, easy and visible results. The solution provider then takes to mind that "fast delivery of a working system" is the main key factor for his success, and for a greater chance of having repeat customers or the security of future projects. Thus on the business side, it pays very much to consider the "business criteria" rather than the "technical criteria".
I think C and I, as we went along ranting about OOAD, pros and cons, shared and agreed that
as far as business is concerned, OOAD is not something a solutions provider imposes, but rather
something that his client requires. Therefore, the solution provider must consider best-practices along with "business-success (best) practices".
C has a more introspective take on the subject in his blog
C and I met for a possible partnership by inviting me to be one of the resources for his startup, which I gladly accepted.
Anyway, on the technical side. He brought to mind and made it clear to me the distinction between applying (or imposing) OOAD (Object-Oriented Analysis and Design) methodology for enterprise Java systems/apps development. As I have been espousing for quite some time that Java people should be practitioners of OOAD (if they have not been doing that) as OOAD enforces (you guess it right) object-oriented thinking, as opposed to "function(or method) thinkers" practiced by the school of Oracle developers where most of the logic are done in stored procs, pl/sql statements, etc.
However, C reminded me about time to market as an important (and deciding) criteria for an Enterprise Client, which in most probability, looks for quick, easy and visible results. The solution provider then takes to mind that "fast delivery of a working system" is the main key factor for his success, and for a greater chance of having repeat customers or the security of future projects. Thus on the business side, it pays very much to consider the "business criteria" rather than the "technical criteria".
I think C and I, as we went along ranting about OOAD, pros and cons, shared and agreed that
as far as business is concerned, OOAD is not something a solutions provider imposes, but rather
something that his client requires. Therefore, the solution provider must consider best-practices along with "business-success (best) practices".
C has a more introspective take on the subject in his blog
Subscribe to:
Posts (Atom)