Hear ye, hear ye: I have a meagre-but-workable knowledge of designing and maintaining small websites.
Over the years I've figured out some helpful website design/management practices that are probably pretty well known and obvious to real website managers, but I think are probably useful to anyone who likes to dabble. The underlying theme is layering and separation. Modularity. For example, the aesthetics of the website---the logo, the masthead---should be developed independently of coding (and preferably beforehand to help guide the coding). The coding itself naturally should separate into content, on-screen actions, and layout --- that is, e.g., your HTML, your javascript, and your CSS.
I'm going to skip a bunch of personal history and go straight to a case study: my lab's website. A few years ago I thought it would be good for my lab to have a web presence, so I thought: (1) We need a cool name, (2) We need a cool logo, (3) We need a cool website.
Turns out "cool" is defined such that "Terrestrial Lab" is a cool name and that this is a cool logo:
The definition is also flexible enough such that www.terrestrial-lab.org is a cool website. At the least, these will be our starting assumptions!
Before I made this website, my advisor often referred to our lab as the NJIT Middle and Upper Atmospheric Group. While that name was descriptive, I thought something like "Terrestrial Lab" was catchier. We're not studying rocks, oceans, volcanoes, or a plethora of other "terrestrial" features (hell, most of science fits under the "terrestrial" umbrella), so this name might seem remiss. But we do study space weather activity with a focus on the Earth's lower, middle, and upper atmosphere, and our work does make up the "terrestrial" component of our broader group, "Center for Solar-Terrestrial Research." So 1+1=2, and it's a great name!
With a hip new name, we could also have an easy-to-remember website URL. Our old website was TSMTM.net --- pretty dang easy to remember.....that is, if you're familiar with the -ospheres: troposphere, stratosphere, mesosphere, thermosphere, magnetosphere. But if you're anything other than an atmospheric scientist, I wouldn't feel bad if it just looks like a random string of letters. And, anyway, if you're anything like me, all you see at a glance is Teenage Mutant Ninja Turtles.
What's a hip new name without an eye-catching logo? I wanted something identifiable. Something simple and obvious from far. My idea was to make a logo that someone could mindlessly doodle in class. Something that would look good as a sticker, or on a T-shirt. Most importantly, it had to do all this while making us look like a serious group of scientists (we're actually just a bunch of clowns, so this is important!).
I started with a triangle: simple, serious, pointy. I played around with it on a piece of paper, adding bits of text until I got things looking like how I wanted. Then I went digital with Adobe Illustrator after the idea was already down. I had to play around with fonts until for a while, but I finally nailed it --- with printed T-shirts and all:
Great, but a logo by itself though isn't enough for a website: one also needs a masthead of sorts. Some kind of graphic. Something that is nice looking, professional, and somehow relevant. I had always thought the periodograms I produced with magnetometer data from Antarctica had an aesthetic appeal to them, so I started there. Overall, this should be a fun part. Just play around. This was my final product:
Ok, so we have a name, a logo, a main page masthead design. Now it's time to get your hands dirty and code. I'm going to assume you know a lot of basics (some HTML, a sprinkle of javascript, a dash of CSS) and just list some things that have helped me. For starters, my website looks like this:
It's important to realize that the TL website looked like this even when I had much less efficient coding practices. I did not yet fully appreciate the oil-and-water of website design --- the natural separation of content, on-screen actions, and layout! The focus of my pointers below is on efficiency, which has nothing to do with the final product, but everything to do with maintaining the final product without going insane.
1. Internal vs External Cascading Style Sheets: Formerly, I used internal cascading style sheets as my primary CSS with manual overrides in-line if necessary. This was fine when I first created the site as a proof-of-concept to show my advisor, but it quickly became awkward to maintain the site and develop new pages. If I wanted to change the CSS of one page, I'd have to manually go around and do it to the other pages as well---or just say "to heck with consistency!"
Solution: I updated my site's primary CSS to an external style sheet (.css file) and now can do manual over-rides both (locally) in-line, like I formerly could, and (page-globally) in the header using the <style> tag. (Look at the code below and/or Google these things if you want to learn more.)
Same story. I used to have it internal to each page on my site using the <script> tag. Although I rarely modify the javascript on the site, the individual pages look so much more cleaned up without it, which allows me to focus on a page's content. Each page now calls on an external .js file, which I only need to edit once if the need arises, not laboriously for each page.
3. The Navigation Bar: The meat of the TL website is the navigation bar at the top. It needs to remain constant as a user peruses the pages, which means it somehow has to exist within each page's HTML file. One terrible way to do it is to copy and paste the nav bar's HTML int each web page's HTML file. That's fine until you want to modify the nav bar --- to add new sections, delete old links, or edit the associated javascript or CSS. One small change to the nav bar requires manually going into each file and...oh man! How time-consuming. I used to actually do this. It was tiresome and oppressive, and it simply stamped out creativity and made website maintenance a chore.
Solution: Again, nothing new conceptually: separation of dynamic content from static content. It's possible to use an external HTML file for the nav bar and simply have each webpage of the TL site refer to that file. This dramatically changes the web design and management experience. How to do it? The answer is Server-Side Includes, which allows one HTML file to call upon an external HTML file. The only caveat for using SSI is that you must change your webpage extensions from .html (or .htm) to .shtml.
To learn basic SSI (which is likely all you need), the wikipedia article is good enough.
The code pasted below shows more than meets the eye. These few lines in an HTML file used to be tens of lines! Maybe more. I used to have both JS scripts and a huge CSS code in the head of every page. Now the website's server simply pastes it there before it gets sent to the user's browser. Same thing for the SSI and my nav bar. That's it. The server does all the hard work before this page ever goes live in someone's browser.
<head>
<title>CSTR - Terrestrial Laboratory</title>
<script type="text/javascript" src="TL_script1.js"></script>
<script type="text/javascript" src="TL_script2.js"></script>
<link rel="stylesheet" type="t ext/css" href="TL_in_style.css ">
</head>
<body>
<!--#include virtual="topLinkBar.html"-->
#
# all other HTML code for the page
#
</body>
And, so the secret to sanity is the separation of seemingly singular suppositions! (And, of course, the mastery of alliteration.)
This is really a very good blog post and thanks for sharing it with the community!
ReplyDeleteWeb design company India
ecommerce website development company in chennai
Best SEO Company In Chennai
web design company in Chennai
Good Post. I like your blog. Thanks for Sharing
ReplyDeleteWeb Designing Training Course in Noida
It is a great sharing...I am very much pleased with the contents you have mentioned. I wanted to thank you for this great article.If you have time just check about my Website
ReplyDeleteI'm a creative Website UI/UX Designer with more than 5 years of experience. During my career, I'd created dozens of different website UI designs and Admin panel UI designs. Create branding and web UI, Dashboards for growing businesses, building brands.
ReplyDeletechiropractic
ReplyDeleteVery helpful blog for us. Thanks for sharing. Please check.Website Design Virginia Beach
ReplyDeleteI found the discussion on design principles for nonprofit websites really insightful. It's crucial that these websites are not only aesthetically pleasing but also highly functional. Clear navigation and compelling visuals can make all the difference in conveying a nonprofit's mission effectively. Please visit our website:- Nonprofit Website Design
ReplyDeleteFingent: Based in New York, Fingent is a trusted provider of custom software development and web solutions. With a focus on innovation and client satisfaction, they offer end-to-end development services tailored to meet the unique needs of each project.
ReplyDeleteBlue Fountain Media: Located in New York City, Blue Fountain Media is a full-service digital agency specializing in web design, development, and online marketing. They have a diverse portfolio of clients across industries, from startups to Fortune 1000 companies.
Codal: Codal is a Chicago-based digital agency that specializes in UX design, web development, and e-commerce solutions. With a focus on user-centric design and cutting-edge technologies, they help businesses elevate their online presence and drive growth.
web development company in USA
Nice and informative blog! This type of information crafts custom, responsive websites that blend creativity with cutting-edge technology.
ReplyDeleteIf you want to know about Website Design and Development Company then you can click here.
Thanks for sharing.
This comment has been removed by the author.
ReplyDeleteIn today’s competitive digital landscape, having a well-designed website is crucial for any business aiming to succeed online. Your website design company durham serves as the digital storefront of your business, and it’s often the first impression potential customers will have of your brand. If you’re looking to create or revamp your website and are based in Durham, finding the right website design company is essential.
ReplyDeleteGreat post! Partnering with a web design agency can be a game-changer for anyone looking to upgrade their website. Their expertise in design and user experience can elevate your site. I highly recommend considering professional help to achieve the best results!
ReplyDeleteWhat an intriguing take on website design! 🌐💡 The comparison of elements that don’t mix well is both thought-provoking and insightful.
ReplyDeleteThanks for the helpful information. I appreciate the clarity and detail.
ReplyDeleteWebsite design company in Bangalore | Website Development Company in Bangalore
This comment has been removed by the author.
ReplyDeleteGreat analogy! Website design truly is like oil and water when creativity and functionality clash. Finding the right balance between an aesthetically pleasing design and a user-friendly experience is key. When done right, these elements work together to create a site that not only looks great but also delivers seamless navigation and performance. It’s all about blending both worlds for the best results! professional website design services
ReplyDeletePrecise Virtual Team offers top-notch website design and development in USA Specializing in custom designs and responsive development, they create seamless digital experiences tailored to your business needs. Their expert team ensures every website is optimized for performance, user experience, and SEO, enhancing online presence effectively.
ReplyDeleteInformative post. Thanks for sharing.
ReplyDeleteproduct design services
Great insights into web development companies in Surat! This guide is helpful for businesses looking to establish a strong online presence. Love the detailed information on each company’s expertise and services.
ReplyDelete