Jump to content

Recommended Posts

Hello.

 

I've just finished building my first website, and I'd appreciate some critique. Specifically, I'd like to get some feedback on the code (you can find it on the site, under the Source tab). I do realize it's pretty messy, and of poor quality (and not supported by Explorer), and pretty broken too, but I'd like to hear your opinions nonetheless.

 

Here it is:       http://www.nocommontheme.co.nf/

 

 

I also have a couple question, if you don't mind:

 

  • On average, how long would it take a professional web developer/programmer to build a website similar to mine? It took me around 3 weeks; is that too long?
  • Generally, how should I structure my website? As in, what should go in the index, and how do I distribute/divide/link the files?
  • In what areas do I need to improve the most? Organization? :-\
  • Based solely on the code I've wrote, would you call me a beginner, or an intermediate? :sweat:

 

Sorry if these questions sound a little childish, and thanks in advance for any feedback.

Edited by BorysSokolov

1. How long it takes you to produce it does not matter (to some degree), the quality that you produce is far more important.

 

2. It's best to separate HTML and PHP as in:

<?php

// your PHP code here

include 'templates/somehtmlpage.html';
Inside the HTML you would then simply echo/loop over the variables:
<ul>
<?php foreach ($users as $user): ?>
  <li><?= $user['name'] ?></li>
<?php endforeach; ?>
</ul>
This reduces the lines of PHP code in your HTML and makes it cleaner.

 

You can take this a step further and introduce layouts.

<?php

// your PHP code here

ob_start();
include 'templates/somehtmlpage.html';
$content = ob_get_contents();
ob_end_clean();
include 'layouts/base.html';
The base layout would contain something like:
<!doctype html>
<html>
  <head>
    ..
  </head>
  <body>
    <div id="content">
      <?= $content ?>
    </div>
  </body>
</html>
This also immediately demonstrates what I would call an intermediate, proper application structuring, does not repeat himself in terms of code, abstracts functionality that should be able to vary, and a good background knowlegde of PHP.

 

3. The use of mysql is deprecated use mysqli instead.

 

4. beginner.

Edited by ignace

Oh no, it finally loaded after a couple of minutes.

 

Anyway, I half agree with what ignace said about the time it takes. To start with I would just focus on quality. There are jobs though that will be time critical, or where you're being paid per-hour and they'll not want inexperience costing them more, unless you're upfront about it. Three weeks isn't a very good indication either; how many hours per day did you spend working on it?

 

In answer to your questions:

 

1) There's nothing uncommon or unique about that site's functionality, so most freelancers will have a lot of this code laying about for recycling, or they'll use a framework and that kind of thing takes no time at all. Your question has too many variables to give a direct answer.

 

2) ignace answered this pretty well.

 

3) HTML & CSS! The site you provided is awful. Not in terms of looks, but adapting to the user's browser. Viewing on my 1366 x 768 monitor, the login and news components on the right side aren't even visible, while there's a huge left margin wasting space. Plus you mentioned IE compatibility issues. How much longer would it take you to convert that website into something production-worthy? You might be surprised how time consuming that kind of thing can be when a client requires it.

 

4) Beginner.

Oh no, it finally loaded after a couple of minutes.

 

Anyway, I half agree with what ignace said about the time it takes. To start with I would just focus on quality. There are jobs though that will be time critical, or where you're being paid per-hour and they'll not want inexperience costing them more, unless you're upfront about it. Three weeks isn't a very good indication either; how many hours per day did you spend working on it?

 

In answer to your questions:

 

1) There's nothing uncommon or unique about that site's functionality, so most freelancers will have a lot of this code laying about for recycling, or they'll use a framework and that kind of thing takes no time at all. Your question has too many variables to give a direct answer.

 

2) ignace answered this pretty well.

 

3) HTML & CSS! The site you provided is awful. Not in terms of looks, but adapting to the user's browser. Viewing on my 1366 x 768 monitor, the login and news components on the right side aren't even visible, while there's a huge left margin wasting space. Plus you mentioned IE compatibility issues. How much longer would it take you to convert that website into something production-worthy? You might be surprised how time consuming that kind of thing can be when a client requires it.

 

4) Beginner.

 

Thanks for your response. I guess I made the mistake of jumping right in without thinking things through.

 

Regarding the IE compatibility though, I just found the task too frustrating. I'll give it a shot once I get a better hang of CSS. 

There are jobs though that will be time critical,

Isn't every job time critical? And these are always on time and on budget, right?

or where you're being paid per-hour and they'll not want inexperience costing them more, unless you're upfront about it.

Like putting a simple button on a website, which you would assume would only take like 20 minutes in total for the HTML/CSS and some PHP. And then you get their 500-page API spec and to put that silly button on their website and the processing will now take you 3-weeks.

 

Yes, if clients ever were honest.

 

It is not always as simple as it is perceived.

Edited by ignace

I thought it would be worth mentioning that I think the look of the site is pretty good.

 

I'm no designer at all (I'm actually rubbish), but looks-wise on my 27" iMac it looks ok. The font isn't great, and I'll explain below, but I would say you have good potential. The guys above don't comment on the design, but I doubt they would say that it's as bad as the code.

 

The fonts don't show up for me. You have used different fonts but haven't specified them in your CSS. To me the entire site uses the Times New Roman font because I don't have the ones you specified installed. Look at http://css-tricks.com/snippets/css/using-font-face/ for advice. Also, you would be better specifying a list of fallback fonts, so do this instead of just listing one:

 

 
font-family:Arial, Helvetica, Verdana;

...that way your browser will use the first font in the list that it supports.

 

Obviously as the above guys have mentioned it isn't coded great, but you'll definitely get there. You seem to have the right attitude too.

 

I think time does matter in the long run and I would say something like this site should take about 8-15 hours for an expert. I started learning programming 4-5 years ago and I'm 50 times quicker (literally) now than when I started. Also, as you progress you'll keep snippets of code that you can re-use (e.g. a basic HTML layout which you'll use every time you start a new project).

 

Personally I would start with a 3 page website, follow Ignace's advice (code structure) and if you ever find yourself cutting and pasting chunks of code then you're probably not doing it right.

 

Keep at it though and good luck!

Isn't every job time critical? And these are always on time and on budget, right?Like putting a simple button on a website, which you would assume would only take like 20 minutes in total for the HTML/CSS and some PHP. And then you get their 500-page API spec and to put that silly button on their website and the processing will now take you 3-weeks.

I wouldn't say every job is time critical. Also depends what kind of clients you're dealing with, I took the OP to mean a site built from scratch, not integrating with an existing system. That's a whole new kettle of fish. You're right though, clients can sting developers with that kind of thing, just as much as the developer could sting the client.

I thought it would be worth mentioning that I think the look of the site is pretty good.

 

I'm no designer at all (I'm actually rubbish), but looks-wise on my 27" iMac it looks ok. The font isn't great, and I'll explain below, but I would say you have good potential. The guys above don't comment on the design, but I doubt they would say that it's as bad as the code.

 

The fonts don't show up for me. You have used different fonts but haven't specified them in your CSS. To me the entire site uses the Times New Roman font because I don't have the ones you specified installed. Look at http://css-tricks.com/snippets/css/using-font-face/ for advice. Also, you would be better specifying a list of fallback fonts, so do this instead of just listing one:

 

 
font-family:Arial, Helvetica, Verdana;
...that way your browser will use the first font in the list that it supports.

 

Obviously as the above guys have mentioned it isn't coded great, but you'll definitely get there. You seem to have the right attitude too.

 

I think time does matter in the long run and I would say something like this site should take about 8-15 hours for an expert. I started learning programming 4-5 years ago and I'm 50 times quicker (literally) now than when I started. Also, as you progress you'll keep snippets of code that you can re-use (e.g. a basic HTML layout which you'll use every time you start a new project).

 

Personally I would start with a 3 page website, follow Ignace's advice (code structure) and if you ever find yourself cutting and pasting chunks of code then you're probably not doing it right.

 

Keep at it though and good luck!

Thanks, John, I'll keep that in mind.

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.