CodingWeb Page: Layout Techniques & Languages

 

Press Ctrl+Enter to quickly submit your post
Quick Reply  
 
 
  
 From:  Ken D. (KEN)  
 To:  ALL
34005.1 
It looks like I'm going to be doing some web programming. Though I've programed in the past using various languages, I've never done anything for the web. (Aside from installing a Beehive forum and changing the images and links in the header.)

1)Layout:
What are some of the various techniques for laying things out on the page/screen, and what are both the pros and cons. I'm trying to get a feel for the reasons to consider/use one approach vs. another.

I've heard of tables, frames, and CSS; but don't know much about their actual use. What else should I look into?

2)Languages:
I see there's lots of languages. What are some of the pros and cons of those? Which work together and which are either/or. Are the options based on what's on the hosting computer, the browser, or both?

I've heard of: HTML, Php, CSS, Pearl, Ruby, Rails, Java. Any others I should be aware of.



I appreciate your educational help with this. I believe it's only possible to choose the correct tool for the job if one knows what's available and their trade-offs.

Ken
Are there any must have books?
0/0
 Reply   Quote More 

 From:  Peter (BOUGHTONP)  
 To:  Ken D. (KEN)     
34005.2 In reply to 34005.1 
Hi Ken,

I'll answer in a bit different structure, because it'll make more sense.

1) HTML
You need to know HTML to do websites. HTML defines the basic structure of pages - it wraps around content to give it meaning. You can get by with just a handful of tags, but I really reading through all of the tags (too many people use generic DIV/SPAN tags for things which have special tags defined for them).
Technically you can use WYSIWYG, but I always advise against that, as it encourages "visual thinking" rather than thinking about what content means.


2) Design & Layout - CSS
There's one option for design and layout: CSS. Cascading Style Sheets.
The name has a big clue about what makes CSS effective - cascading - meaning you can set up overlapping styles, combining multiple classes and tags to get different design based on the context of your content.

Tables are for tabular data, not layout. It's a mistake a huge number of people make, because tables seem easier for layout, but when you learn CSS properly you will easily be able to do stuff with much less effort by using other tags.

Frames make sense in some situations (like Beehive), but some (many?) people have a dislike for them. (Often simply because they've been told to dislike them, rather than knowing the benefits/drawbacks themselves).


3) Client-side interactivity - JavaScript
JavaScript allows you to add interactivity on the clients side - making for a better user experience.
You could learn JS from scratch, but there are libraries which makes things much easier for DOM scripting (aka DHTML).
I use jQuery myself, and would definitely recommend it. There are other options which may well be valid though (Prototype, mooTools, etc).
jQuery supports a CSS-like notation for selecting elements, which I like

(Technically VBScript is an alternative to JavaScript, but almost nobody uses it, and you can feel free to ignore its existance.)


4) Server-side scripting
This is where you get the real choice - there are lots of different languages available.
Ultimately, it's a personal choice - they can all do the same things, but some are easier to use than others.
You only need to pick one, but knowing multiple languages can be a good thing, especially since it helps you think in more logical/abstract terms, rather than simply thinking how the syntax of one language works.
You'll be able to find hosting for all of these languages, though PHP is most common (and thus usually cheapest).

PHP is what Beehive uses, and it is one of the most popular languages. It is free open-source and has lots of resources available for it. It uses a C-style syntax which some people like. (I'm not one of those people)
It's a valid starting point, especially if you'd like to do stuff with Beehive.

Ruby has been gaining popularity recently, because of a framework for it called Ruby on Rails. RoR is a specific way with working with the Ruby language that allows for RAD (rapid application development) by accepting certain conventions.

Java is another option, and whilst flexible and powerful it's possibly not a great option for a beginner.

CFML is what I use. There are various engines for it, the key one being Adobe ColdFusion. CFML is very easy to use, but still powerful and flexible. It's got a much smaller community base than PHP/etc, but there is sufficient resources out there.

Python is a fairly popular language these days, and has a framework called Django which people seem to like.

Perl used to be a popular language, but I don't think I know anyone who would recommend it nowadays.

ASP.NET/C# I'm mentioning for in an attempt to be non-bias. It's Microsoft's and evil. Rendle loves this and will probably be along to sing its praises, so I don't need to.




So yes, in summary:
- Spend some time learning HTML and CSS first.
- Then consider looking at jQuery to do fancy client-side effects.
- For server-side stuff, PHP is a sensible choice. I like CFML and have to recommend it. Ruby & Python are both valid choices.



Um, I can write lots and lots more, but it's hard to be both useful and concise, so I'll give you this now and can go into more detail about stuff if you want me to.
0/0
 Reply   Quote More 

 From:  99% of gargoyles look like (MR_BASTARD)  
 To:  Peter (BOUGHTONP)     
34005.3 In reply to 34005.2 
(Technically VBScript is an alternative to JavaScript, but almost nobody uses it, and you can feel free to ignore its existance.)


Not sure if VBScript is supported by anything other than Billy's bastard browser though.

----
some things never change

0/0
 Reply   Quote More 

 From:  99% of gargoyles look like (MR_BASTARD)  
 To:  Ken D. (KEN)     
34005.4 In reply to 34005.2 

Regarding the server-side scripting, you have to consider what language(s) your hosting provider (assuming you're not hosting your own sites) supports. Ruby on Rails, for example, isn't as widely available, especially at the budget end of the market.

 

Most likely you'll find support for PHP (for *nix servers) or, if you're on Windows, ASP/NET.

----
some things never change

0/0
 Reply   Quote More 

 From:  Ken D. (KEN)  
 To:  ALL
34005.5 

Thank you everyone,

 

I went on Amazon and ordered a few books B-) covering: HTML & CSS, PHP & MySQL, and javascript. That ought to keep me busy 8|

 

It looks like I'll be working on a membership site. The idea is in the early stages now, but will move quickly. The site needs to have all the desirable membership features: forums, member blogs, messaging, profiles/member pages. (Am I missing something?) And of course it'll have an assortment of content around the site's theme, and offered according to membership level/options.

 

I have no interest in reinventing the wheel, though I'm not against making alterations. I'm interested in: fast/easy, stable, and flexible. Part of that is having control over how it looks, and not just color, layout & functionality too. Any pointers on where to look, or something to shy away from. A quick search turned up: Joomla!, Post-Nuke, Drupal, and vTribes.com (a pay system :X ).

 

Has anyone integrated beehive with another system? I don't like typical forms, they're @#$% annoying to use.

 

Ken
P.S. I've seen sites where I did not like frames because they hampered printing.

0/0
 Reply   Quote More 

 From:  Mikee  
 To:  Peter (BOUGHTONP)     
34005.6 In reply to 34005.2 

C# is my favourite server side language by far. I work with both PHP and C#.

 

C# ftw!

 

Oh and by the way - to get started programming C#, just install "Microsoft Web Developer Express" (not Microsoft C# Express) and you can start straight away. No messing around trying to get a development server set up or anything like that.




[Mwah]
0/0
 Reply   Quote More 

Reply to All    
 

1–6

Rate my interest:

Adjust text size : Smaller 10 Larger

Beehive Forum 1.5.2 |  FAQ |  Docs |  Support |  Donate! ©2002 - 2024 Project Beehive Forum

Forum Stats