Tuesday 10 December 2013

Blog #8 - Troubleshooting

"Oh, you're in IT? Can you fix my computer?"

Well yes, I can fix your computer since everyone in NSCC's IT program is required to pass a CompTIA A+ course, including myself. However, there's only so much a web application developer can do since we're not specialists in the hardware field (unlike the systems students).

Here's a little guide to helping figure out what's wrong with your computer:
  1. Is your computer plugged in? This may seem like a stupid question to some, but remember, not everyone in the world knows how to use a computer.
  2. Will your computer turn on? If not, check to see if the power switch on the back of the computer is set to the dash (-) instead of the circle (o). If it is, open the case and check to see if the power cable is connected to the correct pins on the motherboard. The motherboard should be labeled to let you know what goes where. If it still won't turn on, either the power is out in your neighborhood, your power supply is dead and needs to be replaced, or you're in a dead zone.
  3. Do you hear any beeping noises? If you only hear one, that's like your computer saying everything is okay. If you hear more than one, it means a part of your computer isn't plugged in the right way, is non-compatible, is missing, or is damaged and needs to be replaced. To find out what each beep sequence means, check your motherboard's manual to see what each beep code is for, which will hopefully help you isolate and resolve the problem.
  4. Is there anything on the screen? The most common errors I've seen on startup are the ones saying:
    - a piece of non-essential hardware is missing (like a CD drive) and to press F2 to continue without it.
    - BOOTMGR is missing which means your hard drive doesn't have an operating system on it, or has
       become corrupt. If this is the case, you can pay a few hundred dollars to get what data you can off
       it, or you can just buy a replacement hard drive.
    - a whole bunch of text on a blue background, otherwise known as a Blue Screen of Death (BSOD),
       which would indicate a critical system failure. In this case, I would suggest having your computer
       looked at by a professional or friend who knows what they're doing.
If you have a problem not on this list, then it's not a common problem and I would suggest either researching it yourself by doing a quick Google search, or by getting a professional or friend to see what they can do.


Blog #7 - Project Management

Honestly, one of the most tedious and boring jobs out there, but extremely important none-the-less.

One does not simply do something, when it comes to a big job. I know how you feel, once you're given an assignment you just want to dive in and get 'er done, but there's many things that have to happen before that.

The first thing you need to know before starting a project is who your project sponsor is. Without funds or an employer, how is one supposed to know what they're doing? Project sponsors can hire other people as sponsors, such as a major company hiring a construction manager, who then hires a crew. Sponsor's should always be included in the project as it is their will that brought the project to life, and their final say in whether it meets their needs.

The sponsor can then hire project managers to create documentation of the requirements for the project, including how long the project is estimated to complete, how costly the project will be, and who will be involved in the project. And changes to any of the original documentation must be approved by the project sponsor first before it can be applied. These documents are known as a project plan, project management plan, project charter, requirements management plan, and possibly others we weren't required to make for our project.

Project Manager is a very important job, I just don't see myself being one.
Ever.

Blog #6 - Maybe Mobile?

Now that I'm 75% through my secondary education, it's time I start thinking about everything I've learned in all my courses and decide which career path I'd like to take.

So far the courses that I most enjoyed were those of Sean Morrow, specifically the ones where I learned Visual Basic.NET, Java and Android. I was a little shaky starting off because it was so new, but now that I'm used to it I feel like programming is something that I want to do for the rest of my life.

If I narrowed my choices down to which two languages I would really like to master, I would choose Java and Android, which is somewhat funny because Android uses Java. Java just seems the most logical choice for me because I found it the easiest to learn and work with. I even did Java projects in my free time to create things for video games that I thought would be handy, and now that I know Android I think I'll be making my own apps if I can't find one in the Play Store that meets my expectations or needs. The only downside is not owning an Android device of my own, so having to use an emulator every time I wanted to use my app doesn't seem very practical.

When it comes to what company I'll be working for, I'd prefer to work for a big one that's at least renowned in the province, or if possible the country, that will keep me for a long time. I'll need to build up my knowledge and experience on programming before I can be of substantial use to the company though, since I assume all the big ones require diligent workers whom know what they're doing and do it well.

A nice thought to help me keep going towards my future goals and dreams, but winning the lottery sure would make them come true faster. Don't get me wrong, even if I won the lottery I'd still want to do programming work.

Monday 2 December 2013

Blog #5 - Web Server Experience

If I had to choose between Apache and IIS, I'd have to compromise and say I like both.
Apache was the first web server I learned how to install and configure, so I feel more connected to it.
However, IIS is more widely used and offers a somewhat-helpful GUI to help you manage it. (I say somewhat-helpful because it can be annoying at times)

To install Apache, you need to go to their main site at http://httpd.apache.org/ and download the version you want (without crypto).You then follow the instructions in the installer, entering their suggestions if you're unsure, until it's done.
To Install IIS, you need to go into the Control Panel, select the Programs option, and click Turn Windows features on or off. In the popup, navigate to Internet Information Services, Web Management Tools, click the box next to IIS Management Console, and click OK. It will then enable IIS for you.

Apache's websites go inside the Apache#.#\htdocs folder, while
IIS's websites go inside the initpub\wwwroot folder.

Apache's configuration file is in Apache#.#\conf and is named httpd.txt. This file contains any and all virtual hosts, as well as accepted index page file formats and more. Any changes made to this file require administer privileges and an Apache restart to take effect, which is done by simply left-clicking the Apache icon in the taskbar, moving over Apache#.# and selecting Restart. If you get an error, it most likely means something in your httpd file is in an incorrect format and must be fixed before Apache can start.

When configuring a web site with Apache, I find it a lot easier to work with since I can see how and why each component connects with each other, and how it returns the final result.
IIS I find is more complicated to work with because of its GUI, which feels restricting and unnecessary.
Maybe I'm just biased towards Apache because it came first, but if it were required, I would learn how to use IIS better. Until then, Apache just seems the right path for me.

Also, it is not recommended to be running both Apache and IIS at the same time as they will conflict with each other.

Well, I suppose that's enough talk about web servers for now. Using them does seem like something I would consider doing in my future, and who knows? Maybe one day I will.