Archive for the 'Scripting' Category

Web Applications: Are They a Security Risk?

Did you know that most web applications leave your website and operating system vulnerable to attacks and intrusions? This may come as a shock to you considering the popularity of web applications in the age of ever expanding open source software, such as control panels. It seems everyday new applications are being designed to make your job as a webmaster and domain owner “easier.” However with this simplicity comes vulnerability in many cases. This is why it is important to scan your web applications for vulnerabilities before using them with your website.

Even your control panel and CMS are liabilities to your site’s security in many cases. Many hackers focus solely on infiltrating websites using the loopholes left by these web applications. I am sure you’ve been using programs like these for years now, and may think it is a bit paranoid to be concerned about the risk they pose, however I assure you it is a very real risk indeed. The only way to use these applications without taking a risk is to scan them for vulnerabilities.

Hackers Circumvent Security Measures By Infiltrating Administrative Web Applications

Most web hosting companies and business owners have a plethora of security measures in place that they believe makes their valuable information safe. Indeed, if the administrative interface is left at default, and no applications are added, then this may be true. However, 90 percent of users will add one or several web application, and hackers know this all to well. They also know that if they can crack the web application then there is high chance of them being able to access your administrative interface, and from there, the sky is the limit. It is important to keep a balance between convenience and security, as most of the web applications that are designed to make you job easier, also make you more susceptible to server invasions.  In fact unscanned web applications are seen as the leading security concern by many IT experts.

Scanning Web Applications

Of course you are probably not looking forward to getting rid of your handy web applications anytime soon. There is an option for you though; web application scanners. These applications scan web applications and detect vulnerabilities within the software. To make sure you’re getting the most out of your web application scanner, you’ll want to make sure it has certain key features. It is important to ensure that the software is capable of scanning programs that were designed in all of the popular programming languages. You should also verify the capability of the program to handle large amounts of scans in a short period of time, especially if you are building a large website. Last but not least, you will need a scanner that will return results that can be understood by anyone, regardless of their level of expertise in internet technology. Scanning your web applications is a very important part of maintaining your website’s security, and no serious business owner should use a web application without scanning it first.


Delve Into The World of .NET Framework

Created by Microsoft, the .NET Framework is a programming environment that allows for the seamless development of web applications.  These applications leverage open standards such as XML, HTTP, and SOAP to interact with other applications and serve content through client machines.  The .NET Framework is both platform and language independent, which basically means that it is compatible with a wide range of programming languages and operating systems.   Some of the languages it supports are VBScript, VB.NET, C#, Jscript and C++.  The framework is also capable of running applications on Windows, Unix, Linux, and Mac OS X platforms.  Its flexibility enables programmers to develop applications, faster and easier than most other frameworks.

Features and Components

The .NET Framework’s ability to support such a wide range of programming languages is made possible by the CRL (Common Language Runtime) engine.  Rather than compiling applications in native code, CLR compiles them in MSIL (Microsoft Intermediate Language), which then converts it into code.  CLR is also responsible for a number of runtime services, including memory processing, thread management, language integration, and security enforcement.  Most notably, it drastically reduces the time required to write a program through useful features such as cross language exception handling, life cycle management, and dynamic binding for converting  reusable components.  As you can see, the .NET Framework provides an extensive infrastructure for creating web applications.

Web settings and caching are two more important features of the .NET Framework.  Web settings enable the configuration of applications to be handled through web.config.  Since web.config is an XML file, it is highly customizable and easy to understand.  When a web.config is altered in any way, the changes are detected instantly, allowing for the fast configuration of .NET applications.  Caching is also advantageous because it collects frequently accessed data into memory so it can be retrieved faster.  The .NET Framework offers three forms of caching: output caching, data caching, and fragment caching, each which improve application performance in their own unique way.

.NET Advantages

There are many advantages to using the .NET Framework for application development.  It requires fewer lines of code to be written, enables optimal compilation, and an easy deployment.  Because the framework allows the use of web controls, developers can spend more of their time focusing on implementing application design and features instead of writing code.  Another important aspect is that everything, including web controls and blocks of server-side code are compiled on the fly when a page is requested.  .NET Framework applications can be compiled on a developer’s machine and then seamlessly uploaded with all pages to a web server.  This is unlike applications built in ASP, which requires that pages and their components be registered with the operating system.

Summary

The .NET Framework enables platform independence, network transparency, and rapid application development.  Microsoft remarks that the framework will continue to be its main solution for desktop and server development for years to come.  .NET applications aim to help business integrate their systems more efficiently while allowing them to reap the benefits of accessing the information that need at anytime, anywhere, and on any device.


PHP vs. ASP.NET

There are several programming languages available to developers.  Two of the most widely used and effective are PHP and ASP.NET.  Choosing between the two can be very difficult as both are equally efficient at retrieving information and interacting with a variety of databases.  Based on the .NET framework, ASP.NET is a web application framework created by Microsoft.  PHP is a robust programming language that commonly runs on Unix and Linux operating systems.  While very similar in many ways, look beneath the surface and you will see that PHP and ASP.NET are worlds apart.

Cost Efficiency

As an open-source programming language, PHP is free to download from online and use on a web server.  It has the largest community of any open-source language, boasting a code that has been greatly enhanced through the contributions of millions of programmers.  ASP.NET you can say, is an entirely different animal.  In order to use ASP.NET efficiently, you would require many other Microsoft products, most notably, a licensed copy of the Windows operating system.  Therefore, PHP is usually the most cost effective of the two development technologies.

Application Performance

PHP is an interpreted language, which essentially means it runs directly from the code you wrote in the application.  ASP.NET on the other hand, is a compiled language, optimized in a manner that allows it to be fully structured before being put into productivity.  It has been proven numerous times that compiled languages create applications that are considerably faster because applications created with an interpreted language are reduced to machine instructions at runtime.

Programming Environment

PHP is capable of running efficiently on all types of platforms.  This includes, Unix, Linx and even Windows.  Because it is so tightly integrated into the IIS web server, ASP.NET is native to a Windows server and therefore, runs the most efficiently on this platform.

Language Compatibility

PHP is based largely on “C”, which is considered by many as one of the best programming languages in the world.  Based on the extensive .NET Framework, ASP.NET supports a variety of programming languages, including, C, C++, JavaScript, and many others.  The unmatched flexibility of ASP.NET makes it an effective tool for programmers experienced with various languages.

Database Interaction

PHP usually interacts with a MySQL database, which is also an open-source application and a key element of the popular LAMP server.  ASP.NET mainly interacts with a MS SQL database, which is a licensed Microsoft product.  However, PHP and ASP.NET can be configured to work with either database, and also modified to support Postgre SQL, Microsoft Access and Oracle.

Conclusion

Choosing PHP over ASP.NET or vice versa is a matter of preference and specific needs.  Both can help you reach many of the same goals in an efficient manner.  While there is much that needs to be considered, one should never base their decision on speed and reputation alone.  Therefore, it is all about what language works best for your particular project.


What is Ruby on Rails Hosting?

Web technology moves and changes so fast that it becomes easy to get lost in the lingo.  Even when you think you understand something, chances are, you may not necessary have a handle on the terminology.  Take Ruby on Rails for example.  Upon hearing the name, it might not be something you relate to the web, but this technology is rapidly changing the way the web itself is being constructed.

The Rails are all around us, frequently deployed in some of today’s most widely used web environments.  The popular social networking website LinkedIn is just one example of numerous sites powered by Ruby applications.  So what is it?  Ruby on Rails is an application framework used to create dynamic, database-driven websites.  An open-source framework, it revolves around Ruby, a server-side programming technology similar to PHP and Python.  However, it can be used to build powerful web applications that are more robust and faster than when using other programming languages.  Due to its efficiency and flexibility, a large number of programmers have crossed over and made Rails their development tool of choice.

The Cons of Rails

When compared to other languages and frameworks, Ruby on Rails is still relatively new to the development space.  Even more, Rails was introduced to the market around the same time PHP began to set the benchmark for building small to medium sized web applications.  This likely attributes to some of the criticism and reluctance to use it over more established tools.  One of the biggest knocks on Rails is its supposed inability to handle large-scale development projects.  On the other hand, powering a site as big and busy as LinkedIn should serve as solid proof of its effectiveness.  If anything, some of the competitors may be threatened because of Rails’ fast rise to popularity.

Many of the developers that crossed over to Ruby on Rails flocked from PHP and Java.  Those lured from Java were frustrated with the existing frameworks and components, while the PHP defectors were attracted to Rails because of its simplified structure and the ability it offered to work more efficiently.  One of the mottos of Ruby on Rails is DRY (Don’t Repeat Yourself), a mantra based on the principle that developers should never have to perform the same task twice.  This is made possible by providing a standardized interface equipped with useful components such as Action Pack, Active Record, Active Resource, Active Support, and Active Mailer.  Rails provides a good programming environment that makes working with Ruby a much more user-friendly process.

Considerations for Rails Hosting

While Ruby on Rails is quite advantageous from a productivity and presentation aspect, there are some drawbacks.  This mainly relates to the higher price it usually requires to find a reputable host that can actually support the technology properly.  Because Rails calls for a more demanding environment, a shared server with a lot of traffic can easily become overloaded and crash, disappointing many customers.  For this reason, several developers recommend the use of a dedicated server in order to get the most out of Rails applications.


The Basics of XHTML Programming

Many of the pages that comprise internet websites are poorly written.  The main reason webmasters do not realize this is because even though syntactically inadequate HTML code may exist, it could still work in most web browsers despite not following the rules.  While today’s browsers are designed to deal with these inadequacies, the same cannot be said for the growing number of web-enabled mobile devices.  One technology that helps to promote the clean code and compliance needed to integrate the web and mobile environment is a technology known as XHTML.

XHTML Background

As the name implies, XHTML is essentially a combination of HTML and XML.  It represents a set of existing and future document types and modules that include all the elements of HTML combined with XML syntax.  The first version, XHTML 1.0, was recommended by the WC3 (World Wide Web Consortium) on January 26, 2000.  XHTML 1.1 was initially recommended on May 31, 20001.  As of now, XHTML 5.0 is currently in development under the HTML 5.0 specification.  Unlike HTML, these documents must be well structured and can therefore, actually be processed with basic XML tools.  Andrew S. Tanenbaum, a professor of computer science best known for authoring the Minix operating system, said that XHTML is a “very picky” language that distinguishes itself from HTML by way of a much more strict syntax.  This is assessment is right on point.

XHTML Syntax

One thing you should keep in mind is that XHTML is merely an extended version of HTML.  What this means is that writing XHTML code is essentially similar to writing in HTML.  The major difference is that XHTML is far more structured and more strict than its predecessor.  One of the best ways to learn this language is to experiment with some old HTML code and then work to bring it up to XHTML standards.  When working with the code, there are several important rules you need to remember, including the following:

- All elements must be nested correctly.

- All elements must be closed out correctly.

- All tag names must be entered in lower case characters.

- All attribute names must be entered in lower case characters.

- All attribute values must be quoted correctly.

- The name attribute is to be replaced by the id attribute

- All images and graphics must have alt (alternate) text.

- All XHTML documents require a DOCTYPE declaration along with an HTML head and body header elements.

- The title element must be included in the head element.

Learning XHTML is all about practicing and embracing discipline.  If you keep this in mind, you should be able to master it in a relatively short amount of time.  On the other hand, if you do not want to try manually converting an existing HTML to XHTML, you can use a software tool to perform the conversion for you.  HTML Tidy is a highly recommended program because it is a free tool that helps clean your web pages.  With such a handy tool at your disposal, you can get a handle on XHTML and use that knowledge to bring success to your projects.


Next »