Showing posts with label open source. Show all posts
Showing posts with label open source. Show all posts

PHP Frameworks: Tools and Fundamentals (Part 2)

Monday, January 19, 2009

While creating the first article that will contain actual code for these articles series I looked over some things again in order to be sure to provide the correct information. Show what I'm going to do is to give you some interesting resources that are going to help you with during the development process.

Database Architecture

A correct database architecture might be the crucial point of an database driven application . Wrong decisions made during the planning process might lead to future pitfalls and turnarounds and even may cause the project to collapse, especially when building large projects.

There are some Databases and SQL basics and patterns that should be followed for everyone's sake. Searching the web I ran across the following presentations: SQL Antipatterns & Practical Database Design.





Object Maping

In order to save time during the development process most of the modern frameworks map their objects to database schemes. Doing this, processes such as data validation, CRUD actions, code generation and most of the job that some developers ses as "chores".
Some of the terms that you should check before getting started might be the following: Agile Development, Portability and Interface Usability.

The above terms used to keep concerned the developers of desktop applications but as the web evolves into a really powerful tool, many of these technics/terms/tools have been ported to web applications too.

Development Tools

During the last 1-2 years I've been trying to find the environment that suits my needs during development. I've tried many different approaches but the last couple of months I've came down with a solution that fits MY needs and I'm going to the "my" word because everyone has different needs/targets which tries to achieve with various approaches.

I have used simple text editors, WYGIWYS editors, desktop and web IDEs, some of which worked out well and some didn't. The tools that I'm currently using include the following software:

  • Eclipse with the PHP plugin: IDEs such as Eclipse are really handy when dealing with huge amount of code (libs, frameworks etc) and team collaboration (SVN, GIT etc), especially with code auto-completion, automatic code indentation, debug-as-you-type features etc.
  • MySQL Administration Tools: I'm not gonna bother about the power of the command line (especially during the learning process) but when it comes to large database schemes GUI tools can save you a lot of time and headaches!
  • Toad Data Modeler: This is a really powerful tool for SQL development. It supports all features of MySQL and speeds up debugging, monitoring, migration and testing processing.
  • Adobe Dreamweaver: For me Dreamweaver is the absolute tool for HTML and CSS coding as long as you stay in the "code view"!

Some alternatives might be Zend Studio, SQL Navicat, PHPmyAdmin, PHP Designer, PhpED, MyDB Studio and the list could go on.

Google Chrome: Googles's web browser

Tuesday, September 02, 2008

Great news from Google!

All of us at Google spend much of our time working inside a browser. We search, chat, email and collaborate in a browser. And in our spare time, we shop, bank, read news and keep in touch with friends -- all using a browser. Because we spend so much time online, we began seriously thinking about what kind of browser could exist if we started from scratch and built on the best elements out there. We realized that the web had evolved from mainly simple text pages to rich, interactive applications and that we needed to completely rethink the browser. What we really needed was not just a browser, but also a modern platform for web pages and applications, and that's what we set out to build.

More info

Ma.gnolia goes Open Source (M2 Project)!

Friday, August 29, 2008

About 6 days ago (yeap I know news sometimes take a while before they get here) the Ma.gnolia.com team announced that they decided to release their social booking platform as an open source project probably entitled "M2". I think these are good news and I'm really looking forward seeing the first release!

As stated from the team themselves the benefits from this move are going to be beneficial for everyone inveolved: Users, Developers and Magnolia Systems. Just to stay tuned about the way the project evolves, visit Ma.gnolia.org (it sounds like a wordpress.com / wordpress.org to me). If you want to take a deeper look of what is going to happen take a look to the .pdf file:

http://ma.gnolia.org/docs/M2_Charter.pdf

Debugging PHP applications with Krumo

Wednesday, July 25, 2007

There are times during web applications development with PHP that you need something more than the built-in functions print_r() and var_dump() in order to debug your scripts efficiently. You may want to know the name of the variable you are dumbing or you may want to see in which line of your file that variable was evoked, features that print_r() and var_dump() don't provide.



With Krumo things become very easy! You just install it and call its functions every time you want to dump a variable! The resulted information you get are more helpful and beautified (with customizable CSS) while the collapsible DHTML tree menu can be very handy! Check it out yourself!