Strengths and Weaknesses of Waterfall Approach for Software Development

One of the most famous and widely used approaches for software development is the waterfall model. Waterfall approach is an old technique that has been in use for quite some time, but in modern times agile approach is gaining prominence.

Waterfall approach, as is evident from the name, refers to a systematic approach where one step comes after the other. It cannot go the other way round. The process works like the waterfall effect that flows in one direction, which is from up to down.

In this process the life cycle of the development process is predetermined. All the steps are defined before the start of the project. The approach is predictive, where the team is well aware of the order of each step and therefore works accordingly. It starts from the requirement analysis, the design phase and then proceeds on to the implementation, testing and the maintenance phases.

The waterfall approach can be quite beneficial for those who are quite clear on their requirements. A planned approach works for them because they want fixed processes and budget. Where fixed processes are beneficial, at the same time they can be inconvenient at times. In cases where the client is not clear on the requirements and finds in the middle of the project that he/she wants to change course, this approach can prove to be quite problematic.

Another point of the waterfall approach is that the requirement analysis and design of architectural structure can consume a lot of time. Extensive research is done initially as the next phases depend completely on the planning strategy. However, the good thing is that everything is thoroughly worked out and each aspect is studied beforehand. The developers in such cases know what is expected of them.

A waterfall approach works in a systematic order, with one step following the other and the testing phase comes in the end. If there are any big problems encountered in the testing phase, it means a long process to make the amends. The process can consume extra time and money.

We cannot conclude that one approach is better than the other, as every method would have its own strengths and weaknesses. The determination of success for each method depends on how it is being used and whether the approach suits the scope of work being undertaken. While one approach may be suitable for a particular project, it might become totally useless under different circumstances. For example, some believe that agile methods are not well suited for offshore development, as they require a closer contact and communication that is not possible in an offshore project.

Posted in general | Comments Off on Strengths and Weaknesses of Waterfall Approach for Software Development

Schedule Slippage – Root Causes

“The single most important task of a project: setting realistic expectations. Unrealistic expectations based on inaccurate estimates are the single largest cause of software failure.”- Futrell, Shafer

Introduction

With global and competitive market, it is very important to launch a product or service in the market on time, ahead of competitors. Definitely, timely launch depends on on-time-completion of the product development projects. Project planning has lots of challenges to overcome in order to finish the project on time – right from schedule predictability, envisioning future/possible risks and coming up with mitigation plans.

This article talks about some of the challenges, often faced in the Software Product Development industry that causes the schedule slippage.

Schedule slippage: Delay in the project completion from its initial estimated date of completion.

Each project plan will have a planned completion date (NRA, RA), and a bounding box or upper limit in schedule. Nowadays, it is a common practice to have three dates associated with any project plan:

  • Non-Risk Adjusted (NRA) date: Project completion date assuming no hurdles – Ideal conditions.
  • Risk Adjusted (RA) date: Project completion date assuming some risks will come on the way and will need extra time to attend to them.
  • Bounding Box (BB) or upper limit: The upper limit on the project plan before which the project has to be finished under any circumstances – Generally decided by the top management based on product/services roadmap and launch in the market.

Under ideal circumstances, any project is scheduled to complete by NRA date. Considering some risks that may come on the way and would eat some time off the schedule, the project should be over by RA date. If the risks were not envisioned and hence not planned well, then project may get delayed and would complete after RA date. Project completion crossing the RA or upper limit is neither good nor expected out of a well-planned project.

Root Causes

As we always plan for a project to get over before RA date, seldom is the case it happens as expected. There are multiples reasons for schedule slippage, right from improper planning, lack of resources to unplanned requirements and rework that eat away vital time off the planned schedule.

A typical project development process – Each project will have a team (development, testing and other functions) that will work through a process (requirement analysis, schedule estimation, design, implementation and testing) to deliver a product to the customer/end user. Each entity that participate in the project – directly or indirectly affect the schedule.

From the development process, we can identify the items that can cause delay in the execution of the project – for example, misinterpreted or unclear requirement adds up to completion time, unavailability of development tools or resources can prolong the project duration. Various processes like schedule estimation, detailed design and product development if not executed skillfully, may significantly blow up the project cycle.

For better understanding all these possible causes that may result in schedule slippage are categorized .

Let’s have a detailed look at the root causes of schedule slippage category wise.

1) Schedule Estimation: “The key is not to prioritize what’s on your schedule, but to schedule your priorities.” – Stephen Covey

For a project to be executed on time, it is very important to have it planned very well. Any mistake in project schedule estimation reflects as delay in the project completion from its deadline. There are several factors that contribute to improper schedule estimation:

· Underestimation of technical complexities: At the start of the project, many of the team members may not have thorough knowledge of technical complexities and hence their estimation would be incorrect. Sometimes it may so happen that the person giving estimates for a particular task is having no idea about the technical challenges involved in carrying out that particular task. You might hear, towards the mid/end of the project life cycle when the task is not finished on time – “Oh, I didn’t know that this feature also requires 5 more tasks to be done!” or “I was thinking this task to be so simple, but I under estimated it!”. · Lack of Design/Big picture: It is important to have a bigger picture / overview of the complete project to understand how a particular module/feature would fit in to complete project. Product or system level design helps in understanding the interfaces among other modules and the required coordination for product assembly and hence, a better insight into the work involved. Often, estimates without focus on detailed design tend to deviate more from the actual time taken for finishing the job. · Integration Testing: While making a project plan, testing also needs to be accommodated in the schedule. At times, the unit testing or testing done by individual contributors on their module is taken into account but not the system level testing. Toward the release, when all the individually tested modules are brought together, a system level or integration testing is a must. Having the time for integration testing not accounted in the overall project schedule will cause delay in the project completion.

· Unplanned dependencies: Project planning is not only about breaking the project into minute tasks and managing them. A well-planned project schedule also needs to consider certain unplanned dependencies. Some of these are:

o People: Optimum utilization of human resources calls for same set of people working in multiple projects. A person may not be available to work for currently planned/assigned project due to extended/unplanned work in another parallel project. Another issue related to people could be unplanned/unexpected attrition that will affect the project plan. Time is also lost in mentoring of new member by a senior (more experienced) person which goes unaccounted if not planned.

o Tools & Equipments: Project can be delayed if team is waiting for release of upgrade or procurement of any vital tool (hardware or software being used in the project) or if the equipments required for development and testing are not available. “We had a 3-months project for validating our existing solution on new product platform using customer DUT (device under test). We had to wait for the DUT for nearly 1.5 months as it got stuck in customs. After getting the DUT, we realized that it’s been damaged partially during transportation. As a result we had to ask for another DUT and whole project took more than 5 months to get finished.” – I am sure that such cases will be quite familiar to many organizations. Other reason for timely unavailability of tools / equipments is that they are shared among various projects to reduce the operating cost. Any unplanned dependency on their usage or wrong assumption about availability of these shared resources would cause delay in the program. Team members might have to work on shifts to optimize the usage of shared resources which can cause reduced work hours and/or productivity loss and results to schedule slippage.

“I was waiting for Matlab license to be released by another person in the team but he left the office without doing so and I lost 3 hours figuring out what to do?” – is it something you faced before?

o Other programs: If multiple programs have deliverable dependencies, then delay in one project will have cascaded effect on other projects, which directly or indirectly depend on its deliverable. “We got delayed because we had to wait for a critical UI component from the framework project team” or “We didn’t plan for bug fixes for a component which was supposed to be delivered defect free for our usage” are the common scenarios for delays in program which are dependent on other program deliverables. Parallel programs may affect the schedule of your program in a different way as well – Sometimes, management changes the priority of the programs running in parallel. If your project is considered as a low priority one then there might be lack of resources assigned to your project that may result in schedule slippage.

· Beta releases: How many times we seek feedback on our product during development? And how often we allocate time for it? It’s important to plan beta releases if we desire to have our product validated by expert users or lighthouse customers during development. Getting feedback from beta customers becomes important especially when their requirements echo that of a mass customer base. Process of giving workable releases to customers, collecting their experience, having their feedback analyzed, and then incorporating in the final product version takes significant time.

· Risk mitigation and plan B: Every project will have some or the other risks. These risks can be of varying severity and probabilities. While making project plan, it is important to treat the risk individually based on their severity and probability of occurrence. If high probable risks with higher severity are not planned with their mitigation plan (or plan B), they will have huge impact on schedule deviation from planned one. As in one of the previous examples quoted, getting a DUT on time for validation was a risk. Had there been a mitigate plan (plan B) like – Validate with other DUT or if DUT is not available here, let one developer travel to customer’s place and finish the validation on time, the schedule slippage would have been avoided.

2) People: Ultimately, projects are executed by people who may not be skilled or talented. Hence, looking for perfection in projects involving human beings may not be a feasible thought. Certain unpredictable and hence unavoidable issues under this category are:

· Poor leadership: Before thinking of project execution, it is project planning that actually would set the platform of success. Execution of the project depends on its team while planning is taken care by the project leader. The project leader is expected to have enough technical know-how to understand the project goals and to the details of the tasks involved. Poor leadership and superficial knowledge of assignments often results in invalid effort estimation and ad hoc task delegation causing stress and possible delay in project execution. People leading the team are also responsible for keeping the team spirit and motivation level upbeat. Poor personal commitment due to lack of motivation results in loss of productivity and may cause schedule to slip. Another reason that adds up to delay in projects is inability of leadership team to track the schedule progress and take the correction action.

· Attrition: If the project duration is large and job market is hot, it may be difficult to retain people in the project till its completion. Attrition may further delay the completion especially if the person leaving the job was in critical path. A person leaving the organization would leave a gap in the project that a new person may not fill immediately, which in turn causes sudden reduction in the task force.

· Learning curve: When ever a new person or team member is included in the project, he or she may require some time to understand the project to keep in pace with other members. Learning curve is needed for new team members, joining the team either due to attrition or due to any specific technical competency requirement. · Context switching: In smaller organization or groups where people work on multiple projects simultaneously, it is important to have some buffer for context switching. A person planned to work in project ‘A’ for two hours after a gap of two weeks, would take more than scheduled time to complete that task. Gap of two weeks and the fact that he or she was involved in other project would require some time for the member to get back to the context of current project. · Global development teams: In an era of globalization and outsourcing, it is common these days to have development team distributed over different geographical regions. Project plan needs to account for different time zones and working culture. You might expect an input for your task on Monday morning your time but it may be Sunday late evening for that person and finally when the input arrives, you might be on your way to home after work.

Sometimes schedule estimation might go completely wrong if you have not understood the work culture of the region your teammate belongs to – “In my previous work, I was given a task to be completed with a heads up that its very critical task and needs immediate attention’. When I asked my project lead how many days/hours I have for it, I had been time for 2 weeks for high priority and ‘immediate-attention’ work.” Definition of ‘urgent’, ‘high priority tasks’ changes with culture and region.

· Communication Issues: People communicate differently. If important issues are not brought to the notice of the team members, or are not escalated on time, the entire project may suffer. Often fear of embarrassment stops team members from reporting issues faced during execution leading to more time being spent on that task that can easily be executed additional help.

3) Customer Involvement: These issues are quite serious if customer or end users of the product are involved in the development phase. Understanding customer’s priorities, defining your expectation from their involvement needs to be clear and in agreement with both the parties.

· Expert user testing: In the beginning of the project, expert user testing cycle needs to be planned. Process of giving builds or releases for testing and collecting their feedback, analyzing and incorporating them in your product takes significant time which, if not planned, can delay your program. · Timely feedback: “I got feedback from customers for features, delivered in development milestone-1, after milestone-5 towards the release. These feedbacks are critical but now I am worried how to incorporate them without affecting the schedule.” It sounds like a common problem. Incorporation of feedback from customers needs to be planned well taking a commitment from the customer. · Product requirement specification review: Having a product requirement review planned and executed will keep you on right track throughout the project. Reviewing the requirement specification will avoid requirement related defects fixing which otherwise would have delayed, the project.

4) Ambiguous Project Requirement: For any project to be initiated, the first thing is to have requirements for it. In the product development life cycle, requirement phase acts like a foundation. Clear requirement or vision for the project navigates the team to success. However, requirements may not be clear at the time of estimation and may result in delay in the project completion. Issues related:

· Evolving specs: If you are making a product based on a standard which is not yet matured or still evolving, you are more prone to have this risk. Frequency changes in the specs will change the requirement for the project during different stages of product development and team will continue to work on something that is not yet evolved. This results in rework that would delay the project if time for dealing with these changes is not accommodated in the schedule. “We developed an algorithm and hence measurement that was based on certain industry standard. Towards the release of the product, the specs changed and our measurement was no more valid. We had to redo the algorithm to reflect the changes in the specs. This caused our product release delayed by 2 months.” · New requirements: Sometimes new requirements are added as the project evolves towards completion. Implementation of new requirements is not planned at the beginning of the project and hence is not accounted in schedule. Adding new feature without revising the schedule may result in delay.

· Untold expectation: Requirements from the customers may be of two types – implicit or explicit. It is important to have the requirements well documented. Implicit requirements needs to be better defined and documented to avoid any confusion towards the end of the project. Customers may not describe their requirements related to system performance, memory issues, user interface quality and usability but they are very keen on providing feedback in those aspects once the product is given for expert user testing. If we are not clear about such requirements, out design might not address them. Addressing them towards the end of the project may call for design changes and extra work that would delay the project.

5) Unplanned Tasks / Reworks: Bounding box for the project is set by higher management and often lack buffer for unplanned task(s). Having more of unplanned task that creep up at different phases of project can cause schedule slippage. The unplanned tasks or rework may arise due to:

· Sustaining work: In smaller organizations, some of the project team may also be responsible for sustaining / customer support of existing products. These unplanned tasks, which come on event basis, related to customer support are always of high priority. Excess or prolonged sustaining work may take resource out of the planned project causing a potential threat for schedule slippage. · Defect fixes: Defects are bad as they degrade the product quality and consume extra time/effort to fix them. It is good to have testing of the intermediate releases of the project to find and fix defects sooner in the development life cycle. If the fixing-cycle for such internal-milestone defects is not planned, then either the project is either going to slip or product is going to be of poorer quality. Poor programming skill of the team, not adapting to modern programming practices and having ad hoc development processes may lead to higher number of defects which would take more time to fix then planned and cause slippage.

· Task spillover from previous milestone: Tasks that are not completed in previous milestone, due to whatever reason (inefficiency, vacation of the team member, resource crunch etc), will have to be completed in the next milestone thereby increasing the load on the team. If adequate buffer is not planned, these tasks spilled from previous milestone over to next, can delay the project. · Requirement change / refinement: Requirement changes during the product development will result in rework of what has been previously done with first version of requirement(s). Addressing changes in the requirements needs extra time and effort and may cause schedule slippage. In some cases, the requirement from customer is misunderstood resulting in wrong system design and implementation. Additional, unplanned time is lost in correcting the design/implementation which causes schedule slippage.

Conclusion

On time delivery is the challenge software development companies are facing globally. To have a complete control over estimated schedule, it is very important to identify the elements in the development cycle that cause schedule slippage. This article uncovers and explains the root causes of delay in programs using examples from real world. Having an insight to the root causes will help the program managers to make good decisions to avoid future schedule slippage.

Posted in general | Comments Off on Schedule Slippage – Root Causes

Advantages and Disadvantages of Professional Shopping Cart Software

Advantages & Disadvantages of professional shopping cart software As e-Commerce is becoming a regular technique in the business industry it appears that more and more software development firms are developing professional shopping cart software to be released in the market. There is currently a huge range of free shopping cart software that has been released, and it seems that most e-Commerce website owners prefer these free systems over paid for professional shopping cart software. In this article we are going to look at the advantages and disadvantages of professional shopping cart software.

Advantages

• Even though you will have to pay for the solution, you get a cart package that has been fully developed, tested and used in the real working world by other e-Commerce websites. If the solution is used by a popular website service then the chances are it has been under more than enough testing to be deemed ready for use.

• Professional shopping cart software will be supported by the people who developed it. A lot of free solutions out there are simply developed and then discontinued as the freelance developers move onto their next project. Support is essential if you are going to want upgrades as mentioned in our next point.

• As the system is supported, the development team are likely to fix any bugs that may occur and provide patches and security fixes. This means the shopping cart software will only get better as time goes on and furthermore improve your e-Commerce website.

• Your site is likely to be more secure when using a professional software solution as in most cases the it developed house private content management systems. This improves security as public content management systems such as WordPress are constantly under threat from hackers as they try to compromise the free source code.

• Another huge advantage of using professionally developed software in e-Commerce is that they will already support a huge range of different payment options for your customers. There are various carts – that only offer PayPal for payment by standard, and it can take a very long time to find plug-ins or figure out how to add other methods yourself. With professional software you can save time and possibly money as it is all included.

Disadvantages

• Your e-Commerce venture might be a small time project and professional cart does cost money which you may not have. In this case you may have to make do with a free shopping cart solution. The good part of conducting business online is that after you have made profit with the free system you can reinvest your money to buy a professional package.

• You trust the developers to do everything they promise to ensure the best experience. It might be slightly difficult to use at first and you might have to spend some time getting used to the bespoke system. You also have to understand that you are vulnerable until patches are made if a security flaw is found.

Posted in general | Comments Off on Advantages and Disadvantages of Professional Shopping Cart Software

Why Computer Hardware Is Important

In this day and age, it is hard to deny the influence of technology in our lives. We live in an era where pretty much is automated and computerized. And amidst all the technological advancement that humankind has achieved, one important device has been created that will only sure to become more relevant to our lives as technology progresses, the computer. No one can deny that computers are now an essential part of our lives, the same way a cell phone and television does. It is safe to say that in this day and age, having no computer would be an inconvenience. Which is why it is important that we know the way our computer works so that we would be aware of the things that we should do in case it stops working. The hardware of the computer is considered to be the most important because without it, it will simply not work.

Simply put if you know how to handle the hardware of a computer and know each of their function for the unit, then you can easily determine what the problem is in case the unit stops functioning. In order to be familiar with basic computer troubleshooting, then you also need to be familiar with computer hardware. A good example of this is the memory of the computer (RAM). All programs and applications that are ran in a computer needs memory. Without RAM it simply will not function. Aside from that, even if you have a RAM but it does have the specifications to keep up with the programs that are being run, then the operation would have slowed down to a crawl. So when it comes to computer hardware, you have to make sure that it is not obsolete, so you need to upgrade depending on what sort of program that you are usually using.

When handling computer hardware, you have to keep in mind some safety measures so you can manipulate the unit safely. Before opening any computer cases, you have to make sure that the unit is unplugged or you might risk electrocution or shocks. While checking your hardware components, always check for damaged parts because that is most likely the one that is causing problems. When inserting components and parts, you have to remember that if it does not fit, then most likely you are inserting it on the wrong slot. If it does not fit, then do not force it or you will risk breaking the component. Before touching any parts inside the unit, make sure that you discharge yourself first by through a grounded metal object or you can use an anti-static wrist strap or mat which is sold in stores for cheap.

By knowing and analyzing every computer hardware part you will know about its importance and if it ever breaks down then you can perform the proper troubleshooting steps. Every hardware component is important for the computer's operation. The performance of your computer largely depends on how good your hardware is, so be sure that they are always in good working condition.

Posted in general | Comments Off on Why Computer Hardware Is Important

How to Fix an Error Accessing the System Registry Easily

The system registry is an important component to practically every computer, and it would actually be considered a pile of electronics if the system registry was not included. It is essential for computers based on Windows, since it is the storage location for the hardware, software, and pretty much everything that makes the computer run.

Changes and updates go directly through the system registry for storage, but sometimes things do not always go as smoothly as we wish. Not many know what to do about an error accessing the system registry, but it must be fixed in order to keep your computer running.

An error accessing the system registry is not very uncommon, and it usually occurs when old files or updates are still located within the registry. The error can occur when new updates are downloaded, new programs installed, or even when new software is being added to your computer. A window will usually pop up stating “error accessing the system registry” and not much can be done until the error is fixed.

It can result from old updates being left in the system, or even old files that were not deleted when a download or installation was incomplete. The best way to get rid of the error accessing the system registry is to find out the problem, get rid of old files, and start fresh with new updates and software to keep your computer running smooth.

Because the error accessing the system registry can occur for a number of different reasons, it can sometimes be hard to locate the specific problem. The first step is to determine what exactly triggered the error, such as a new download, new software being installed, or updates occurring to current software on the computer.

The error is most common when updates occur or when updated software is installed, since most likely older versions are still being kept within the registry. In this case, the error accessing the system registry can be easily correct. First off, the installation or update needs to be stopped. Then the system registry can be accessed by the computer owner, and software can be purchased or downloaded to fix this problem.

One of the best options for getting rid of an error accessing the system registry is a registry fix program, since it goes in and does all of the work for you. Rather than trying to find the damaged files and delete them yourself, the program knows exactly what to look for and get rid of for the error to go away.

Not only will a registry fix help to get rid of the problem occurring now, it can even help to get rid of any files and old updates that may cause problems in the future. It is beneficial for clearing your computer of any unnecessary files or programs that may be causing it to run slow, and can even prevent an error accessing the system registry in the future.

A registry fix program can either be downloaded online or purchased at an electronics store, and is a great way to fix an error accessing the system registry. It does all of the work for you, and can even improve the overall performance of your computer. It can get rid of old files, partial updates, or even programs that are no longer needed, and is perfect for fixing your error accessing the system registry.

Posted in general | Comments Off on How to Fix an Error Accessing the System Registry Easily

Pick 3 Lotto Logix – What You Should Know

The primary goal of Lotto Logix is to present informational resources for many individuals who are interested in playing and winning in lottery. Lotto Logix locates and lists the best lottery websites having useful contents for players; determines the best possible methods and strategies for playing at the lowest cost; finding free lottery games and lists the vital factors a player needs for lottery software. If you want to learn about lottery games such as pick 3 Logix provides pertinent information, which may help you in terms of playing, betting, and winning.

Lotto Logix limits its lists of lottery websites into 1 or 2 links so that players can choose efficiently. The websites are grouped according to their functionality in terms of software, results, and information. More so, Lotto Logix provides information of every website including tips, news, articles, freeware, books, statistics, shareware, programs, software, predictions, wheeling systems, and wheels among others. Since Lotto Logix has the objective of winning the lottery, it also provides assistance for players who would want to do the same. It is undeniable that not everyone has answers or solutions to winning in the lottery. Thus, Lotto Logix hopes in bringing methods and strategies to fit into one tool that will effectively lead to lottery winnings.

Although some lottery players do not believe in the usefulness of lottery software for games such as pick 3 Logix believe that it can help in storing, tracking, and charting winning number combinations. Lottery software provides predictions that are useful in choosing numbers to bet. The software can provide 90% accuracy in terms of distribution of numbers as well as the winning numbers since it lets you import your wheeling system. You can wheel all the numbers in you Pick 3, 5, or 6 games as you are allowed to filter number combinations.

In terms of free lotto games, Lotto Logix locates and lists every free online lottery games with legit prizes and uses state drawings for the winning numbers. On the other hand, Lotto Logix does not list all the games specifically if the websites for such games advertise extremely. This is because Lotto Logix thinks that it is much better to separate them from other free online lottery games that do not advertise as much. As such, it plans on establishing a link-farm page specifically for games that employ pay-per-click advertising or those that employ sign-ups in order to cover for the page cost. However, Logix is not very enthusiastic in creating such additional page. This is because most of these kinds of sites have too much demand that seem outrageous or unbelievable for players.

If you want to improve your odds of winning in lottery games such as pick 3 Logix has determined that playing more tickets is the only efficient way. On the other hand, it has also determined that it is more possible for you to win lower tier prizes while waiting to with the grand prize. It is best to establish strategies that allow you to track specific events for possible winnings.

Posted in general | Comments Off on Pick 3 Lotto Logix – What You Should Know

Website Design – Hardware and Software Tools You May Need

Before you get started with your new website or editing your current site, you need to consider which hardware and software tools you may need to support your efforts.

When it comes to hardware needed this can be very simple or reasonably complex depending on your particular needs. Of course, if you plan to create a new website (or even view your new website later) you need a computer. Simple enough, right? Not necessarily. We prefer to work with Apple Macintosh (OSX Leopard on MacBook Pro) as we do a lot of intensive graphics work and have previously invested in Adobe Creative Suite software (Photoshop, InDesign, Flash, Dreamweaver, etc.). It is just as easy to create your new website using your Windows PC but we would suggest you stay away from using Windows Vista (any version) and migrate to Windows 7 or stick with Windows XP. These operating systems are just much more stable and reliable.

Another consideration for hardware should be some sort of backup hard drive or removable USB memory stick(s). It is important that you back up all of your website data to a removable drive in the event your computer crashes, is broken or is stolen. When you create website files, most of your data will be stored on the website hosting servers but, in many cases, you will have many other “builder files” that usually never make it to the hosting servers. If you lose this data you will be forced to start from scratch in many cases. Another piece of hardware that many forget about is a HD Video Camcorder. If you plan to include video on your site, you should be investing in something half decent; you can normally pick up a good video camera that also captures “still photos” for under $500.00.

When it comes to software needed, this can be somewhat more complicated, again depending on what your website design goals are. At the very least, you will need some sort of text editing software, FTP (file transfer software), graphics creation software and then a variety of other tools as you progress.

Here are some of the most common subjects you should consider when planning the design of your website product.

COMPUTER

Do you currently have a computer that can process large files (i.e. – video files) quickly and efficiently?

WEBSITE SERVER

Are you planning to host your own website portal? If so, do you know what type of hardware and server software you will need?

BACKUP HARD DRIVE or USB STICK

Do you currently have some sort of backup hard drive equipment or plan?

VIDEO CAMERA

Will you be creating custom videos for your website and, if so, do you have a HD video camera ready to go?

MOBILE WEB DEVICES

Are you planning to make your website “mobile web friendly”? If so, do you have an iPhone and an iPad? Android phone? Blackberry device? These will be needed for testing purposes!

WEBSITE CREATION SOFTWARE

Do you have any website creation software (i.e. – Adobe Dreamweaver or Microsoft Front Page) installed, licensed and ready to use?

GRAPHICS EDITING SOFTWARE

Are you planning to create your own website graphics or edit pictures? Do you have the necessary software (i.e. – Adobe Photoshop or Photo Studio)?

DATABASES

Are you planning on creating a database for your website and, if so, do you know which software to use for this purpose?

Posted in general | Comments Off on Website Design – Hardware and Software Tools You May Need

Double Towel Racks – The Easy Way To Increase Space

Bathrooms almost always pose a storage challenge. They often have minimal space to do all the jobs we need to do in there and to store everything we use while we're in there.

When a bathroom is shared by a couple of people, or even an entire family, unique storage challenges come up, and they require unique solutions. When, say, four people use the same room for bathing, an obvious problem is: where do you put all the towels? Bathroom hardware manufacturers came up with a better solution: double towel racks.

A traditional single towel rack provides sufficient space to dry one towel. If you've got four people using four towels each day, and you have a typical bathroom, you'll need a wall covered with towel rods to provide enough drying space.

Double towel racks provide an innovation solution to this all-too-common bathroom storage problem. You'll find double towel racks come in traditional finishes like polished chrome and polished and antique brass, and popular finishes like brushed nickel and oil-rubbed bronze. You can find economic versions of double towel racks in unfinished wood and ceramic-and-plastic. Regardless of the amount the wall space you have available to install this hardware, you'll find one to fit your space; They come in the range of standard sizes.

If your bathroom is short on storage, you'll usually be open to considering any new space-saving solutions. You can find bathroom suites with a double towel racks installed below. Imagine-in the space where you could normally dry a towel or two, you can double your hanging space, and have room to store a few fresh folded towels and other bathroom essentials, too.

Double towel racks are an excellent solution when you've got lots of damp towels to handle, but other solutions do exist:

• Install a row of pegs or hooks along the wall of the bathroom.
• Install one or more multi-prong hooks on the back of the bathroom door.
• Buy a shower curtain rod with a towel rack incorporated in its design.
• When you purchase shower doors, look for ones where the handles double as towel bars.
• Install suction-cup hooks inside the tub surround.
• Place a swing-arm towel bar to the wall next to your tub or shower. This way, the towel bars extend into the room; They are not limited to hanging against a wall.
• Hang a hook over the bathroom door, linen closet door, or the door of the water closet. These over-door hooks come in single, double, and multiple hook versions in colors and finishes that either stand out or blend in.
• Repurpose an old-style coat rack and use it to hang towels in the bathroom. It takes up only a single square foot of precious floor space.
• If you want to add furniture to your bathroom, look for a hall tree, which is usually reserved for use in the foyer or a mudroom. They come in many styles and finishes, equipped with hooks, mirrors, storage benches, and shelves.
• If you've fortified enough to have a sizable linen closet in your bathroom, visit the closet organization section of your home improvement store. These stores have trained personnel who can help you look at the space you have and redesign it to suit your needs.

Installing a couple of double towel racks can provide a simple way to add storage space to your bathroom. But investigate all the possible storage options for your unique bathroom design challenges. You're not limited to one solution-think creatively and combine them to make a bathroom that works for you.

Posted in general | Comments Off on Double Towel Racks – The Easy Way To Increase Space

Computer Engineer Salary

A report by CNNmoney states that students who majored in computer engineering were the top earners of the class of 2011. On top of that according to the Bureau of Labor Statistics, the demand for computer software engineers is expected to grow by nearly 38% by 2016 You may have just stumbled upon your new career!

There are two types of engineers, hardware and software. A hardware engineer deals with physical components. They research, design, and test the physical components of a computer including circuit boards, chips, and keyboards. A software engineer, called developers, create programs for users to perform task. They create the software that translates the commands from applications into instructions that the hardware can understand. They create the operating systems and computer interfaces for desks and consumer electronics.

95% of jobs are located in metropolitan areas. Positions are located in research labs and manufacturing labs. Some work in computer system design firms, research and develop firms, or federal government. Just as there is a range of potential work environments you may end up being in, there are also a large variety of things you may be creating programs for. Computer engineers create on computers, cell phones, navigational systems in your car, video games, and etc. If you're creative, love computers, and do not mind making a lot of money in the process then this just might be for you!

Some of the highest income makers coming directly out of college are graduates in the computer engineering field. This is a great incentive to buckled down and stay focused on those late nights studying in your dorm. This will literally pay off .. BIG TIME! The average salary for computer engineer job postings nationwide are 29% higher than average salaries for all jobs nationwide. Sound good yet? Let's get into the specifics.

The overall computer engineer salary is $ 87,000. To be even more specific let's discuss what you can expect if you enter involved in hardware or software. Starting with the low end of what you can expect. As a software engineer the lowest 10% average $ 45.44 / hr or $ 57,810 annually. The highest 10% average $ 65.28 or $ 135,780. As a hardware engineer the percentages or a slight bit higher. A hardware computer engineer salary on the low end can on average expect $ 48.73 / hr or $ 62,400. The highest 10% of hardware engineers make $ 70.07 / hr or $ 147,610. Not a bad day's work!

Posted in general | Comments Off on Computer Engineer Salary

How Useful is CAD Software to Engineers and Architects?

The emergence of advanced technology has made people today dependent on machines. Using computers and software, for example, is a very common illustration of this. Computer experts are coming up with more and more software to make more and more jobs easier.

A more specific illustration of this can be found in the modern approach towards engineering and architecture. These days, professionals in these fields use CAD computer software which is a program that allows them to create designs faster, easier and with more accurate measurements. Aside from the convenience that CAD software brings, it also helps put architects and engineers ahead of their competitors. CAD, which can render designs that are two-dimensional or three dimensional, stands for Computer Aided Design and has been in use since 1982.

So how does CAD computer software work? And what does it do exactly to help engineers and architects? The program is actually multifaceted in the sense that there are many ways it can help. To make CAD work will require, however, a careful study of its features and the many ways it can be used. It is rather a complex yet flexible and highly functional program.

This article will not be enough to discuss the various ways that CAD works but pinpointing its advantages could give some very good ideas. One great advantage of CAD computer software is its easy-to-use tools in the creation and alteration of designs. Obviously, this is so much better than the old fashioned way of using a pencil and eraser directly on paper. This method of designing is obviously so much easier and engineers and architects simply have more time to finish other tasks. In other words, high productivity is going to be the main end result of using CAD.

Before the design is actually printed on paper, CAD also allows both the design professional and the client to preview what has been finished so far. Any alterations can be made simply by manipulating the drawing through the use of the software. With CAD, it is so much easier to spot errors because the designs can be rendered exactly as they would be in reality. Hence, modifications can be done even before printing, thus, allowing one to save.

With the tough competition that everyone has to face these days, it is wise to take advantage of new technologies that can help put them ahead in the race. While traditional methods hold a significant part in the history of design, advanced tools such as CAD software should only be welcomed as man’s way of furthering development in a field of expertise that he himself has created long ago.

Posted in general | Comments Off on How Useful is CAD Software to Engineers and Architects?