Monday, February 28, 2011

Advantages and Disadvantages to Using MySQL Vs MS SQL

Two of the most popular database systems used by web developers today are MySQL and Microsoft's MS SQL server. Both are similar in regards to being storage and retrieval systems. The two systems support primary keys, along with key indices which allow you to speed up queries and constrain input. Furthermore, both systems offer some form of support for XML.

Apart from price, which is the obvious difference, what distinguishes these two systems, and which one is right for you? We'll overview both products, point out the major differences and explain the advantages and disadvantages of using them for your business.

Open-source vs. Proprietary

When it comes to these two databases, the differences begin with the open-source nature of MySQL vs. the closed, proprietary structure of the SQL Server. MySQL is an extensible, open storage database engine, offering multiple variations such as Berkeley DB, InnoDB, Heap and MyISAM. On the other hand, with the Microsoft product, you are limited to a Sybase-derived engine through both the good and bad times.

When considering how MySQL integrates seamlessly with a number of programming languages and other web-based technologies, it certainly has the advantage over MS SQL in the way of compatibility, as the SQL Server is known to work better with other Microsoft products.

Licensing

Contrary to popular belief, the MySQL system isn't always free. On the other hand, it is always more affordable. In regard to both products, licensing fees are based on a two-tiered scheme. With MS SQL, the best way to obtain a developer's license is to buy a license for the Microsoft Developer or Microsoft Visual Studio suite. Both provide you with a free SQL Server license for development use. If you want to use the product in a commercial environment, you need to at least purchase the SQL Server Standard Edition - which could set you back over $1,000 for a few client connections.

Because MySQL is an open-source system under the GNU General Public License, developers can use it at no cost as long as the associated projects are also open-source. However, if you intend to sell your software as a proprietary product, you would need to purchase a commercial license, which costs about $400 for up to nine clients. Depending on the project and your funds, MySQL may have the advantage here.

Technical Differences

The open-source vs. proprietary battle alone is a leading cause why some users choose one system over the other. However, there are a few differences from a technical aspect as well.

For instance, MySQL doesn't offer full support for foreign keys, meaning it doesn't have all the relational features of MS SQL, which is considered a complete relational database. Some versions of MySQL also lack full support for stored procedures - the biggest disadvantage being the MyISAM system, which doesn't support transactions.

Performance

In the way of performance, MySQL is the clear leader, mainly due to the format of its default table, MyISAM. MyISAM databases leave a small footprint using little disk space, memory and CPU. While the system runs on the Windows platform without flaw, it tends to perform better on Linux and other UNIX-like systems. Because of its stability, many internet powerhouses such as Yahoo! use MySQL as their back-end database.

When it comes to performance, MS SQL's strength of being packed with more features than other systems is perhaps its biggest disadvantage. Although most of these features are designed for performance tuning, they tend to sacrifice other essential elements. The cost here is complexity and the hogging of resources in the way of storage and memory, which leads to poorer performance. If you lack the knowledge and sufficient hardware to support an SQL server, you would be better off with another database management system.

Security

These two database systems are pretty much deadlocked in regards to security. Both come with adequate security mechanisms by default, bearing you follow the directions and keep the software updated with security patches. Both operate over known IP ports which unfortunately attracts a wealth of intruders, a downside that can be attributed to both products. The good thing is that MySQL and MS SQL allow you to change ports just in case the default becomes too vulnerable.

Recovery

As far as recovery goes, the SQL Server has a definite advantage over MySQL, which tends to fall a little short with its MyISAM configuration. A UPS system is mandatory with MyISAM as it assumes uninterrupted operation. If a power outage should occur, it could result in the corruption and loss of critical data. With the SQL Server, data corruption is more unlikely. The data travels through various checkpoints while passing from your keyboard to the hard disk and through the monitor. Additionally, the SQL Server keeps track of the process, even if the system unexpectedly shuts down.

The Best Choice

As you can see, both systems have their advantages and disadvantages. From our perspective, any product that allows you to be efficient is a good database; anything other than that isn't worthy of your time and frustration. When it comes to MySQL and MS SQL, the decision all boils down to the situation and most importantly, what you're looking to accomplish.

Thursday, February 24, 2011

Video Editing Software

1) Windows Movie Maker 2.6 : Microsoft has made version 2.6 of Movie Maker available for download, and it runs on both Windows Vista and Windows 7. While advanced users are likely using a more sophisticated video editing program, there’s no denying that Movie Maker is an excellent, full-featured option for the average home user.


2) VirtualDub : VirtualDub is a video capture/processing utility for 32-bit and 64-bit Windows platforms (98/ME/NT4/2000/XP/Vista/7), licensed under the GNU General Public License (GPL). It lacks the editing power of a general-purpose editor such as Adobe Premiere, but is streamlined for fast linear operations over video. It has batch-processing capabilities for processing large numbers of files and can be extended with third-party video filters. VirtualDub is mainly geared toward processing AVI files, although it can read (not write) MPEG-1 and also handle sets of BMP images.

3) T@b ZS4 Video Editor : ZS4 Video Editor is free to download and use. It is video editing and compositing software which aims to provide media experts with a facility to combine a variety of media types(currently photos, videos and audio files) into one or more output files.

4) Wax : Wax is a high performance and flexible video compositing and special effects software. The idea for Wax is to be very general purpose and flexible in video compositing and effects, so that you can compose your dream video sequence with ease everytime.Wax can create 2D & 3D special effects and can work in two modes – as a standalone application which would appeal for home users/beginners, and as a “plug-in” to video editors/NLEs which would be more useful for professional editors.

5) Cinefx Jashaka : Cinefx is an offline playback, editing, encoding, animation and visual effects tool based on the Jahshaka technology that allows you to create professional digital media on your desktop. Use the tools that hollywood uses to create blockbuster films and special effects.

6) Blender : Blender is the free open source 3D content creation suite, available for all major operating systems under the GNU General Public License. It is one of the powerful, multi-use editing/compositing and modeling tool. This tool allows you to edit, create 3D graphics, sound effects, add special effects and much more.

7) Avidemux : Avidemux is a free video editor designed for simple cutting, filtering and encoding tasks. It supports many file types, including AVI, DVD compatible MPEG files, MP4 and ASF, using a variety of codecs. Tasks can be automated using projects, job queue and powerful scripting.

8 ) MovieStorm : Moviestorm is the complete 3D movie making software application for all abilities. Whether your movie interest is cartoons, crime, music, horror etc, you can create awesome animation effects using this software.

9) Movica : Movica is just a graphical user interface that uses some fine programs to edit movie files. A great deal of emphasis has been placed on keyboard shortcuts to make the job of editing easier. Basically, it is meant for editing the kind of movies that VirtualDub won’t. V-Dub is primarily an AVI editor, Movica will work on .wmv, .flv, .rm and .mpg files. This makes it more versatile than Virtualdub.

10) Video Spin : VideoSpin, free editor based on Studio, does a pretty darn good job compared with most free video tools. It doesn’t match the qualities of paid softwares but perform basic editing and output movies pretty easily.

11) AVIedit : It is a great tool to work with .AVI files. Regardless of small executable size, this avi editor offers you unlimited power of digital video processing. AVIedit allows you to join and split avi files, extract frames and do whatever you want… You can capture video by number of ways, including one-frame-per-minute (web camera) option, workaround annoying 2 Gb file size limit, send your videos to printer, heavy compress it and post to your webpage.

12) StoryBoard Pro Software : Atomic Learning’s FREE Video StoryBoard Pro is designed to give teachers, students, and home movie makers a tool to plan ahead when creating video projects. It features the ability to enter shot titles and descriptions, complete with planned lengths and edited order, indicate shot types: video, still, audio, music, or titles and much more.

13) AVI Trimmer : SolveigMM AVI Trimmer is a free video editor for fast and lossless AVI editing. This freeware AVI editor is small, smart, easy to use and involves no encoding/decoding processes. No video / audio degradation and out of sync problem arises after editing. All AVI file types of any size and video / audio content are supported.

14) Zwei-Stien Video Editor : Zwei-Stein 3.01 is a freeware non-linear, non-destructive video compositing and editing system which offers many advanced features unavailable elsewhere. With Zwei-Stein you can edit up to 256 video, audio and still image clips, each with up to 64 effects chained serially. Cropping, panning and custom effects are easy with automatic key frames.

15) DVDVideoSoft Free : A pretty basic software to edit video and audio files. Free Studio is a single package which bundles all free software from DVDVideoSoft to work with DVD, video and audio files. With this free software you can convert video and audio files between different formats and to iPod, PSP, iPhone, BlackBerry and other portable devices; burn and rip DVDs and audio CDs; upload and download videos and music to your computer, iPod, PSP, iPhone and BlackBerry; perform basic editing of audio and video files.

16) AVITricks Video Editor : AviTricks is a non-linear, non-destructive AVI video editor with real-time preview. It makes cutting and joining footage easy and includes a wide range of built-in adjustable effects that can be used separately or in combination. (Effects include dissolves, mirror image, sepia, iris effects, fades, TV-shop and many more.) Besides the preview screen, the video you are working on is also represented clearly and graphically on a timeline and a tree-structure. Both of these fields are active and easy to work.

17) DVD Knife : DVD Knife is a simple tool for extracting DVD clips from your DVD’s.The clips will be stored in VOB format only. This is the simplest and fastest tool in its category which has ability to extract long VOB clips in few seconds.Its so simple that only three steps can extract the clip ie “Select start” – “Select end” – “Save”. So get your favorite movie or film scenes stored seperately now. It is compatible with Windows XP. I hope this little free tool will come for Vista or 7 in he future.

18) Mewa Film : It is a non-linear editing tool, called montage (this name might change) where video files are shown as a sequence of images layed off horizontally. The video files can then be assembled and cuted using intuitive actions as “drag and drop” and “rubberband selection”.

Monday, February 7, 2011

Zend Framework: PHP + MVC + More!

Zend Framework is an open-source software framework for PHP5. It has a flexible architecture that lets you build interactive web applications and web services effortlessly. One of its strengths is the highly modular Model-View-Controller design, which makes the code more reusable and easier to maintain and lets you focus on the big picture.

Model-view-controller is an architectural pattern used in software engineering. Complex computer applications present a large amount of data to the user. A developer often wishes to separate data (model) and user interface (view) concerns. This enables him to make changes to the user interface without affecting data handling, and reorganize data without changing the user interface. MVC solves this problem by introducing an intermediate component: the controller. The controller decouples data access and business logic from data presentation and user interaction.

Zend Framework has further enhanced PHP and improved its candidature for use within an enterprise environment. It aims to:

* Provide a repository of high quality components that are actively supported.
* Provide a complete system for developing web applications powered by PHP5.
* Don’t change the PHP – it’s already a great platform.
* Embrace collaboration and community to further advanced PHP5 programming.
* Positively contribute to the PHP 5 ecosystem and the PHP collaboration project.

Advantages of Zend Framework include:

§ MVC application framework – Zend Framework’s model-view-controller architecture provides an industry best practice for Web application development. It enables the separation of business logic from user interface design.

§ Database support- Access multiple brands of RDBMS via a database-independent object-oriented interface. Databases supported include IBM DB2, MySQL, Oracle, Microsoft SQL Server, PostgreSQL and SQLite.

§ Internationalization – Zend Framework supports advanced yet simple solutions to develop PHP 5 Web applications for a global audience.

§ Web services – Use classes to publish and consume Web services and feeds in PHP.

§ Foundation Framework services – Zend Framework provides many other classes to make common application development tasks quick and easy. For example, solutions for email, sessions, authentication, logging, caching, filtering input, and others are included.

Built in the true PHP spirit, the Zend Framework delivers ease-of-use and powerful functionality. It implements best practices in connecting the application to databases and networks. And so, it frees the developer to concentrate on user interactions and the business logic behind them.

All in all, Zend Framework provides much required “face-lift” to PHP and facilitates powerful solutions for building modern, robust, and secure websites.

Sunday, February 6, 2011

change the default developement environment in Visual Studio 2008, 2010

How do I change the default developement environment in Visual Studio 2008, 2010?

answer:

Use the Import and Export Setting Wizard:

1. Choose Tools -> Import and Export Settings...
2. Select Reset All Settings and click Next
3. Select whether you would like to save the current settings and click Next
4. Select the settings you want to use and click Finish