Tag Archives: Frameworks

Drupal, the Open Source #PHP CMS, in the White House! Now What? #gov20

Government 2.0: The Use of Drupal and Open Source Technologies

Happy Fav Five Friday!

The web and other news sources have been buzzing about the White House site using open source technology, Drupal. Many influential people have shared their thoughts on this subject, but I like this post by Tim O’Reilly the best.  He makes a good point about how the Government has been using open source, but it’s adoption by http://whitehouse.gov should improve the government adoption rate.  The New York Times also published an article titled “Drupal Moves into the White House”, which you can find here.  I recommend you review these two articles, because they are packed with related resources.

Calling a Friend with a Coconut

The right tool for the job is important!  Can you make a phone from a coconut?  You probably could, if you were a professor stranded on a desert island with the Skipper and crew.  Would you hang a picture with a shovel? Would you cook a meal in the dishwasher?  These ideas may seem silly, but most jobs are easier with the right strategy and correct tools.  The mission is better served when more options are available.  Drupal is not going to be the “magic bullet” that kills all overspending in Government IT, but it is good to see more tools available in the Government 2.0 toolbox.

What is this “Drupal, Open Source PHP CMS” Thing?

Drupal is a free software package that allows an individual or a community of users to easily publish, manage and organize a wide variety of content on a website. Tens of thousands of people and organizations are using Drupal to power scores of different web sites for Enterprise 2.0 solutions, Government 2.0 platforms, Social Networking portals, and much more.

The built-in functionality, combined with dozens of freely available add-on modules, will enable features such as: Collaborative authoring environments, Collaborative authoring environments, Blogs, Discussion Forms, Podcasts, and much more.

Drupal is open-source software distributed under the GPL (“GNU General Public License”) and is maintained and developed by a community of thousands of users and developers. Please visit http://drupal.org for additional information.

Drupal

Drupal (#OpenSource CMS): Tutorials & Webinars for Beginners

5+2 Webcasts About Drupal

These “how to” Drupal webcasts are part of my favorite Drupal collection.  You will find five presentations to help you quickly understand what Drupal is and what it can do.  I have also included the important “Drupal Security” presentation, a quick overview before you buy the book.  I added the “Drupal Garden” video, because it allows you to see how simple & cool content management can be.  You should also listen to the “JackBe” video “Developer Community Ignites Customer Engagement, Reduces Costs and Delivers Measurable ROI with Drupal”, he uses some very interesting words to describe Drupal.  You can review other Drupal presentations here.

The Future Gov 2.0 Toolbox Will Hopefully Also Contain Tools Like  Zend Framework

Extending the art & spirit of PHP, Zend Framework is based on simplicity, object-oriented best practices, corporate friendly licensing, and a rigorously tested agile codebase. Zend Framework is focused on building more secure, reliable, and modern Web 2.0 applications & web services, and consuming widely available APIs from leading vendors like Google, Amazon, Yahoo!, Flickr, as well as API providers and cataloguers like StrikeIron and ProgrammableWeb. Learn more at http://framework.zend.com

Zend Framework

Social Media, Widgets, & Gadgets with OpenSocial?

How about Government web sites with customizable widgets, like the iGoogle dashboard?  Apache Shindig is an OpenSocial container and helps you to start hosting OpenSocial apps quickly by providing the code to render gadgets, proxy requests, and handle REST and RPC requests.  Apache Shindig’s goal is to allow new sites to start hosting social apps in under an hour’s worth of work. Learn more here http://incubator.apache.org/shindig/

Apache Shindig

What about Open Source Training and Education?

Drupal does not offer any type of “Developer Certification” at this time.  It just does not seem to be part of their business model.  You can become “Third Party Drupal Certified”.  Will Government 2.0 Developers really need certification?  There are a few places you can get an “open source” type of certificaiton. Zend offers Training and Certification Programs.  You may want to take a look at O’Reilly Technology School. O’Reilly has been spreading the knowledge of innovators for close to 30 years. With an academic approach to publishing, trend spotting, research, and conferences, O’Reilly has gathered and distributed the information needed for innovation, helping to drive the development of the Internet as seen today.

OReilly School

Moving Forward with Government 2.0

Discover, Participate, & Engage with Data.gov

The purpose of Data.gov is to increase public access to high value, machine readable datasets generated by the Executive Branch of the Federal Government. Learn more at http://data.gov

Government Data

Sunlight Foundation: Opening America’s Government

Sunlight Labs held a contest (Apps for America) and offered prizes to people for developing applications with Government data.  You can see the winners here http://sunlightlabs.com/blog/2009/apps-america-winners/

Apps For America

Apps for Democracy: An iStrategy Experience

Take a look at these Government data related apps from brilliant people around the world.  See them here http://www.appsfordemocracy.org/application-directory/

Apps for Democracy

Government 2.0: Whats Next?

The 2010 Gov 2.0 Expo is where you can find out more about the future of Government 2.0. Learn more here http://www.gov2expo.com/gov2expo2010

Gov 2.0 Expo 2010

What Do You See in the Future For Government 2.0?

Data Visualization is Key

Happy Fav Five Friday!

Social Media + Time = Information Overload

Our time to review information is shrinking while the available information to review is growing, which leads us to the need for methods that help us understand information faster. Data visualization will play a key role in helping us convey and interact with information in more interesting ways. Adobe Flash Builder is a tool that will help.

new-internet-media

Adobe Releases Flash Builder 4 Beta 1 – Including Zend Framework

Adobe has released a beta version of Adobe Flash Builder, the next generation of the popular Flex Builder tool. Zend Framework is now included within Flash Builder, allowing developers to introspect PHP classes and then to use a drag and drop approach to bind specific methods to UI components in applications, such as interactive charts, graphs, datagrids, and more. These new features provide a simplified development approach for adding rich UI to PHP applications using the Flex Framework and Zend Framework. Download Flash Builder 4 Beta 1 today from http://labs.adobe.com/?sdid=ERZSR.

Learn more about Flash Builder 4 and Zend Framework integration in an online e-seminar on June 9th. Register for free at: http://www.adobe.com/go/flex_seminars/?sdid=ERZSR

Zend Framework

zendframework

I’m excited to see the Zend Framework is included in the new Adobe Flash Builder.  I have been closely following this project.  I believe the Zend Framework plays a key role in Enterprise Level application development.  This framework is

  • Well Documented
  • Simple
  • Safe for the Enterprise
  • Supported by Industry
  • Supported by Development Community
  • Supports Rapid Development
  • Flexible Architecture
  • Extensible
  • Tested Code Base
  • Professional Training Available
  • Certification Possible

Some people may argue that PHP Zend Framework is just an abstraction layer of unwanted, bloated code.  I disagree.  I believe the Zend Framework, with it’s Object Oriented approach is the foundation of Enterprise 2.0 level code.  I recommend at least taking a look http://framework.zend.com .

Using Adobe Dreamweaver to color code modules, zend templates, & other file types

Getting Dreamweaver to open template files

dreamweaver-preferencesAdobe Dreamweaver makes coding easier with it’s color coding and auto-complete features. I use the Zend Framework on many of my projects and I wanted to take advantage of features in Dreamweaver for my template files that have an extension of .tpl that are basically PHP files. Here’s how I added the file type to Dreamweaver.

  • Open Dreamweaver
  • Open Edit>Preferences
  • Select “File Types / Editor”
  • Add .tpl to items in “Open in Code View”
  • Click “OK”

Updating your Dreamweaver Extension File

Open Extensions.txt in the Configuration directory where you installed Dreamweaver. Adobe Dreamweaver default install directory is “/Program Files/Adobe/Adobe Dreamweaver{version}/Configuration”.

Open Extensions.txt with your text editor (notepad). You should see a line towards the top of the files that ends in “:All Documents”. Update this to “,TPL:All Documents”. Note the extension is added in uppercase without a period. Now look for a line that ends with “:PHP Files”. Update this to “,TPL:PHP Files”. Save this file.

Updating your Dreamweaver Document Types

Open “Configuration\DocumentTypes\MMDocumentTypes.xml” in your text editor. Update the documenttype section with the id of “PHP_MySQL”. Add “tpl” to the winfileextension list. Add “tpl” to the macfileextension list. Save this file.

Zend Template files treated as PHP files in Dreamweaver

Open your template files (.tpl) in Adobe Dreamweaver. Now Dreamweaver will treat these files as PHP files and give you the proper color-coding & PHP auto-complete features.

Using this technique with Smarty, Drupal, Zend, & other file types

You can use these same steps to help Dreamweaver understand your other file types. I have other file type associated with PHP in Dreamweaver. I use .phtml files for a template engine and other special extensions for a wide variety of Content Management Systems.

Associating these file types with the right tools has improved my work flow and I hope it helps you. Please feel free to share your tips here.

Installing The Zend Framework

UPDATE:

This article has been updated, please see “How to Install Zend Framework

http://framework.zend.com/

Extending the art & spirit of PHP, Zend Framework is based on simplicity, object-oriented best practices, corporate friendly licensing, and a rigorously tested agile codebase. Zend Framework is focused on building more secure, reliable, and modern Web 2.0 applications & web services, and consuming widely available APIs from leading vendors like Google, Amazon, Yahoo!, Flickr, as well as API providers and cataloguers like StrikeIron and ProgrammableWeb.
http://framework.zend.com/about/overview

Installing Zend Framework from the command line

Connect to your server with a command line tool like PuTTY

PuTTY is a free implementation of Telnet and SSH for Win32 and Unix platforms, along with an xterm terminal emulator. It is written and maintained primarily by Simon Tatham.

Here are the command line steps

These steps are executed by super user (su) in your site’s root directory

  1. wget http://framework.zend.com/releases/ZendFramework-1.7.0/
    ZendFramework-1.7.0.tar.gz
  2. tar -xzvf ZendFramework-1.7.0.tar.gz
  3. rm ZendFramework-1.7.0.tar.gz
  4. mv ZendFramework-1.7.0/library/Zend /usr/local/lib/php
  5. rm -rf ZendFramework-1.7.0

Command line steps explained

  1. Get file package from site.
    wget http://framework.zend.com/releases/ZendFramework-1.7.0/
    ZendFramework-1.7.0.tar.gz
  2. Decompress the file.
    tar -xzvf ZendFramework-1.7.0.tar.gz
  3. Delete the compressed file.
    rm ZendFramework-1.7.0.tar.gz
  4. Move the library files to your standard location.
    Note:
    This is usually something like “/usr/local/lib/php”, but you may need to check your PHP Include Path to validate your standard location.
    mv ZendFramework-1.7.0/library/Zend /usr/local/lib/php
  5. Delete the decompressed directory and all it’s contents.
    rm -rf ZendFramework-1.7.0

Setup Zend Framework Directories

Move just outside of site root directory to create your Applications directory.

  • mkdir applications
  • mkdir applications/data
  • mkdir applications/data/logs
  • mkdir applications/data/tmp
  • mkdir applications/data/tmp/templates_c
  • mkdir applications/controllers
  • mkdir applications/views
  • mkdir applications/templates

The Zend Framework site offers offers Zend Framework installation steps that are a little different than the steps explained here.

FRAMEWORKS, WE DON’T NEED NO STINKIN FRAMEWORKS!

Web 2.0 frameworks or Enterprise 2.0 frameworks serve as an abstraction layer supporting design patterns which allows integration of code libraries, services and application programming interfaces (APIs) to form a standard application programming interface (API). This approach promotes a rapid development strategy.

Your Current Enterprise 2.0 Framework

Oh yeah, every development team uses a framework. Your framework may consist of copying & pasting code snippets from various places in other projects, email, web sites, or somewhere on your network. Some frameworks are simple code structures that may store common header & footer elements separately from content elements that call the header & footer. This very simple framework could be a good early strategy for a car dealer business that may have 100s – 1,000s of pages to display car details. This approach would save a tremendous amount of time when updating the header or footer in one place instead of several thousand.

Which Framework should I Use?

The strategy for choosing your framework should include evaluating your Enterprise 2.0 goals. I recommend creating a framework comparison chart to assist you with the evaluation. The list of web application frameworks is fairly large and you should be able to easily find one to fit your needs.

The PHP Zend Framework

http://framework.zend.com/

Extending the art & spirit of PHP, Zend Framework is based on simplicity, object-oriented best practices, corporate friendly licensing, and a rigorously tested agile codebase. Zend Framework is focused on building more secure, reliable, and modern Web 2.0 applications & web services, and consuming widely available APIs from leading vendors like Google, Amazon, Yahoo!, Flickr, as well as API providers and cataloguers like StrikeIron and ProgrammableWeb.
http://framework.zend.com/about/overview