April 28th, 2009
Categorized under: Technology, business

Creating your startup from scratch.
Part 2 – Language, Frameworks & CMS

Here we are, with our business killer idea and our brand new  just registered domain name. We are ready for the technical specifications, so the first question is : which programming language should I choose? PHP, Java, Ruby, Perl…?

Choose your language

First of all there are 3 questions you should ask yourself ( by @JoeStump ):

  • Can you find developers?
  • Is it widely supported?
  • Does it makes you happy?

Forget about performance issues ( PHP Doesn’t Scale, nor Ruby, nor Perl… ) because languages don’t scale. It’s not really important to make your code 300% faster, it’s not where your bottlenecks are. So instead of finding out the best ever existing programming language you better spend your time thinking about one which of them will make your life easier.

I choose PHP. I’m not saying it’s better or faster, it’s just the language I’ve working on for the last years. There are many resources for PHP on internet to help you master it and get the best from it.

Don’t reinvent the wheel

Now I recommend some investigation. Can I implement my idea in any of the already developed technologies? Can I use a Content Management System for my project? You should really consider about using an existing CMS and apply the necessary modifications better than develop all your idea from scratch.

A Content Management System (CMS) is a computer application used to create, edit, manage, search and publish various kinds of digital media and electronic text (via Wikipedia)

Some of the best Open Source CMS are:

  1. Silverstripe (PHP, MySQL)
  2. Joomla!(PHP, MySQL)
  3. Drupal (PHP, MySQL)
  4. Plone (Python, MySQL)
  5. Alfresco (Java, MySQL)
  6. Wordpress(PHP, MySQL)
  7. OpenCMS (Java, MySQL)
  8. Mambo (PHP, MySQL)
  9. Typo3 (PHP, MySQL)
  10. e107 (PHP, MySQL)
  11. Liferay (Java)
  12. DotNetNuke (.NET)
  13. MODx (PHP, MySQL)
  14. XOOPS (PHP, MySQL)

They are all pretty customizable (using plugins) and with no big modifications you can have your site up and running in nearly no time.

My application is too complicated! CMS are not for me

Depending on the needs of your application maybe a CMS won’t be useful for you. It’s time to choose a programming framework. A framework is an abstraction in which common code providing generic functionality can be selectively overridden or specialized by user code providing specific functionality.

It’s the base for all your code with additional objects to help you deal with the different problems you may encounter during the development. Some important features to look for in are:

  • MVC (Model-View-Controller) design pattern
  • Templating
  • Caching
  • Security
  • Database abstraction layer
  • Filesystem access
  • Form Validation
  • Inbuilt CMS
  • Inbuilt auth

Known PHP frameworks ( via One2 )

Other Frameworks:

As you can see I always try to use any known technology. Here you can find a complete list of frameworks

Creating your startup from scratch   

Part 1 – Choosing a domain name

Part 2 – Language, Framework & CMS

Part 3 – Design, resources & Inspiration

Part 4 – Database selection

Part 5 – Hosting or Dedicated Server?

Part 6 – Control Version System

Part 7 – CSS Structure

Part 8 – JS Structure and Framework

Part 9 – URLs &SEO

Part 10 – Testing tools

Part 11 – Promoting your Startup

Sources :

15 Open Source Content Management Systems
Choosing a Framework

Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • Reddit
  • Technorati
  • TwitThis

Comments

  1. just like part 1, very informative + I look forward to the rest!


    Gareth Poole
    April 29th, 2009

RSSSubscribe to my feed now.
twittexperts

Last Updates on Twitter

SEO Powered by Platinum SEO from Techblissonline