KillerSites Blog

Stefan Mischook

Java web hosting is still brittle.

August 24, 2006

It has been a couple of years since I moved (from in-house hosting) my Java based web applications to using an outside company.

When I was hosting my little apps from my Windows 2000 server (using Caucho Resin,) on a DSL connection, I never had a problem … probably because it was so small.

Since growing and moving to Tomcat on Linux, I’ve found that Java is not the most stable thing … it is not uncommon for Tomcat to lock up.

Contrast this to my PHP based applications (WordPress for example) and I have yet to experience a problem.

THE JAVA FACADE

The Java community loves design patterns (they need them with that overly engineered Frankenstein of a language …) so I’m sure they’ll understand this -> Java is heavy, whenever you start a Java process it like putting on 50 pounds – it slows you down.

The Java facade is the claim that Java is a light nimble thing … the JVM that is. It is not anymore. It once was say back in 1997.

I always wondered why Sun (a billion dollar company) could not get Java Applets to work whereas the relatively tiny company Macromedia, could with the Flash player?

… I’m ranting, so sorry.

CPANEL IS SCARED OF JAVA

Funny, when you activate Tomcat to work with a domain on CPANEL, it gives you a warning about how much juice Java swallows up … and warns against enabling too many Java based websites. It doesn’t say jack about PHP …

JAVA’S FUTURE IS IN LEGACY

It seems a contradiction, but I think that’s where it’s at. Java will become (strictly) a technology of the Enterprise (and legacy integration) while nimble languages like PHP and Ruby will be used to create the new innovative software.

Why?

PHP and Ruby programmers can (and do) code circles around Java developers. You can’t blame the Java developers: the Titanic couldn’t turn on a dime either!

Zing!

read more

Is HTML a scripting language?

August 24, 2006

I’ve seen this confusion come up from time to time – is HTML a scripting language?

Short answer: no.

Yes a nerd detail, but nonetheless, this is something that should be made clear.

THE DETAILS:

HTML is actually a markup language and not a scripting language.

Scripting implies decision making capabilities (the code can actually evaluate and take an action based on what it finds) – PHP, PERL, Ruby, Javascript are examples of scripting languages.

Markup languages create structure for a document … they only describe data. For example:

  • HTML
  • XHTML
  • XML

… but you knew that already.

[;)]

Stefan Mischook

read more

PHP Video – PHP and Forms

August 13, 2006


PHP video tutorial

I just a released a new video (in a larger format) on forms and PHP at www.killerphp.com

You can check out the details (and the video) at www.killerphp.com

Part 2 (coming out soon) we will get into practical PHP code.

CIAO,

Stefan Mischook

read more

3 Categories of Programming Languages

August 2, 2006

I wrote my first script back in 1996 – some really simple JavaScript that validated HTML forms and presented users with ugly ‘alert’ boxes when errors occurred.

I always wondered why on Windows, ‘alert’ boxes looked so ugly?

… they probably looked good on Macs though.

Since then, I’ve written software for business purposes in perhaps 8-9 languages. Over the years, I’ve come across many ways in which people classify languages:

  • Object Oriented vs. Procedural vs. Prototype
  • Scripting vs. Programming
  • Compiled vs. dynamic

… and many more.

Recently a more practical way of classifying languages has come to my attention – classifying languages by problem-domain or in other words, context.

  • System Languages
  • Architectural Languages
  • Application Languages

I like this list, because it really conveys a sense of practical use for a language. I’ve hammered out the details below:

System Languages

… best used to build operating systems, hardware drivers etc. Fast and gives you low level (close to the core) access to the computer. These languages are used when speed is critical.

These languages include:

  • C
  • C++
  • Assembler

Architectural Languages

… best used to build frameworks that support (make easy) application building. Not as fast (at run-time) as system level languages, but they provide a higher level of abstraction that makes writing software quicker and more productive.

These languages include:

  • Java
  • C#

Application Languages

… best used to build the actual business applications like web shopping carts/stores, connecting to databases and creating the screens for users to interact with the database.

These languages include:

  • PHP
  • Ruby
  • Perl
  • Python

These language all allow for extremely fast development.

Programmers are freed from the low-level details that you have to contend with when working with architectural and system level languages.

The fact that they’re all scripting languages (that don’t need to be compiled,) adds to the ease of use and speed of development.

MY POINT

It makes for an interesting way to look at languages … and our choice of what language(s) to use for a given project.

Stefan Mischook

read more

Book Review: Web Designer’s Reference

August 2, 2006

This book is a mirror image of the book Web Design with Dreamweaver 8 by the same author – except this book is for hand coders.

A good title for people new to modern web design practices that include:

  • CSS for layouts
  • Semantic code
  • Accessibility in web design

The topics are covered within the context of small usable projects, that can easily be adapted to your own web design work.

Though published in 2005, the material is still relevant and still is a pretty good buy.

read more

Book Review: Foundation Web Design with Dreamweaver 8

August 2, 2006

Beginners book on using Dreamweaver 8 – but not for beginners to web design.

Web Design with Dreamweaver 8 teaches how to use Dreamweaver to build modern, standards-compliant websites.

This is a great book if you are a web designer (with some experience) ready to take the next step in terms of understanding modern web design methods: as you learn to use Dreamweaver, the author gives concise coverage of various modern web design practices like CSS for layout, semantic web design etc …

Project driven for much of the book, you are guided through a series of common web design task:

  • Styling links with CSS
  • Laying our pages with CSS.
  • Creating and styling forms.

… and much more.

Each project covered, is representative of something you would want to do in the real-world, but not so big to bore the hell out of you …

A good book for anyone who wants to learn how to use Dreamweaver 8.

read more

Book Review: Web Design in a Nutshell – 3rd edition

August 2, 2006

This book should probably be on any web designers/developers desk.

Web design has changed drastically since this book’s first edition came out … and thankfully Web Design In A Nutshell has been updated accordingly.

As with all of Oreilly’s ‘Nutshell’ books, Web Design In A Nutshell covers each topic in a concise and yet complete manner making it both a great learning title (for people with some web design skills,) and a great reference.

Some of the topics covered:

  • CSS – basics, page layout methods, hacks, tricks etc
  • HTML, XML and XHTML
  • Accessibility
  • Web graphics

… and so much more.

Besides the core coverage of the material itself, this book is also packed with great references to web sites and other good books on web design.

Get the book.

read more

How ‘sticky’ is your website?

July 31, 2006

When I am talking about ‘stickiness’ (in the context of a website,) I am talking about how long and how often people visit your website.

When you have a real ‘sticky’ website, people will spend more time on it, come back often and will bookmark (add to favorites) your site.

If your website is not sticky, it’s almost pointless to make any effort to get traffic to it.

WHAT CAN YOU DO TO MAKE A WEBSITE STICKIER?

It comes down to a few things:

  1. Keep the website layout simple.
  2. Keep the website layout consistent throughout the site.
  3. Have concise and clear writing.
  4. Have interesting and entertaining content.
  5. Stay on topic.

I think the first 4 points speak for themselves – we all know that you should have your ‘home’ button and other navigational elements in the same spot on each page …

That said, I think point #5 needs to be expanded on a little.

WHY STAYING ON TOPIC IS KEY.

One mistake website owners can make, is to try and cover many diverging topics on the same website. This may seem like a good idea, but all it does is confuse your visitors, presents a bigger challenge in terms of organizing the content and finally, it dilutes search engine traffic.

I AM GUILTY OF THIS ERROR

I knew about staying on topic years ago and because of this, I started creating micro-sites that were topic specific. But then, I went nuts …

Killersites.com started to grow in all kinds of directions … soon I had:

  • PHP articles
  • Photo galleries
  • Web design articles
  • Web site monitoring
  • Page Rank meters

… and all kinds of other stuff.

I should have kept it clean and simple and concentrated on the thing that killersites.com was all about: web design and creating killer websites.

MICRO-SITES

Because of the content-creep found in killersites (it has too much stuff buried in deep dark holes,) I’ve started to create my new and topic specific micro-sites.

Each web site deals with a particular topic and does not diverge. So far I have these websites out:

  • www.killerphp.com -> teaches web designers php.
  • www.killerajax.com -> teaches you how to use ajax.
  • www.killeractionscript -> teaches, yep … Flash Actionscript.

… I still also have the classics:

  • www.how-to-build-websites.com
  • www.csstutorial.net
  • www.secretsites.com

MICRO-SITES ARE ‘STICKIER’

To prove my point, I can share one very interesting web statistic with you: the percentage of people who bookmark my websites.

Consider these numbers:

  • killersites.com -> 18%
  • how-to-build-websites.com -> 33%
  • killerphp.com -> 90%
  • csstutorial.net -> 92%

There are many factors that go into affecting these numbers, but a major factor is found in the focus of the content.

For example:

The majority of people bookmark (add to favorites,) killerphp.com because the website is ONLY about php … and that’s why they are there.

Contrast this to killersites.com, where a relatively small number of people bookmark it … we get too many people looking for too many different things … the content is too divergent.

MAKING KILLERSITES.COM STICKIER

It’s not going to be easy, but I am now cleaning things up, moving things to micro-sites, simplifying the pages – sometimes spring-cleaning comes in late summer!

read more

Book Review: Programming Ruby

July 25, 2006

The Pragmatic Programmers’ Guide

This is the famous ‘PickAxe’ book that Ruby nerds talk about. A very well written book that is concise and to the point.

A COUPLE OF COMMENTS:

This is one of those books that reads very well. I had a hard time putting it down even though the coverage was deep – you’ll learn a lot about Ruby and maybe more about programming in general.

I never give the TOC of a book (that you can easily look up,) but I should mention 2 major divisions:

  1. Part 1 is a tutorial that leads you through the core Ruby language.
  2. Part 2 goes into the Ruby environment – the tools that you have available with Ruby. There’s a lot and they work well.

There is much more (advance Ruby concepts, Ruby reference) but I will leave that for you to look into.

FINAL COMMENTS:

What can I say … if you are using Ruby or you want to learn Ruby, you need to get this book.

read more