The Walper Tobacco Shop sits in downtown Kitchener, Ontario, and calls itself Canada’s oldest tobacco shop. In 1996 they wanted a website. I had never built one. They hired me anyway. They are still in business today, three decades later, on the same block.
This is the first website I ever shipped. The screenshots in this entry are not a recreation. They are pulled from the Wayback Machine’s capture of the original site, and they look exactly like 1996 because that is when I built them.
The site lived at home.golden.net/~walper/. Read that URL slowly. The shop did not have its own domain. They were on a tilde-user account on Golden Net, the regional ISP that served Kitchener-Waterloo in that era. You signed up for dial-up, you got a user directory on the ISP’s web server, and that was your address on the web. If you want a single artifact that tells you what 1996 actually felt like for a small business getting online, that path is it.

What I actually built
The site ran on hand-written HTML. There was no CMS. There was no CSS as a working standard yet. Layout came from nested <table> tags, which is what you used in 1996 if you wanted anything to land in a predictable spot on the page. The background was a tiled marble texture, which was very of-the-moment, and which I would not pick today.
Product photography was scanned from print. I would borrow physical cigars and brand sheets from the shop, scan them on a flatbed at home, clean them up in an early version of Photoshop, and drop them into the page as GIFs. The Romeo y Julieta page has a ruler graphic on it that maps the actual physical sizes of three cigars — Churchill, Petit Corous, Tres Petit — against an inch scale. I scanned that ruler from a piece of brand collateral the owner handed me, and I used it because no stock library on earth was going to have it. You made the asset because the asset did not exist.
The contact flow was a CGI-era HTML form. Name, company, three address lines, phone, email, fax. There was a “How did you hear about this site?” dropdown that defaulted to “Referral” because the owner told me almost everyone walking in had been told about the shop by a friend. There were two checkboxes — have someone contact me, please fax me information — because in 1996 a fax was a normal way to send a price list. The form posted to a mailto: handler. That was the state of the art for a small business that did not run a server.
Every page carried the line “this page was designed and is maintained by Christopher Ross” at the bottom. I did not know yet that this was a portfolio move. I put my name on it because the shop owner wanted somewhere to point when his customers asked who built it.

Why this still works as a portfolio piece

The instinct on a piece this old is to apologise for it. I will not. The marble background is dated. The layout tables are dated. The fax field is dated. None of that is the point.
The point is that I shipped a working site for a paying client in 1996, and the client is still in business in 2026, and so am I. The same hands that scanned a Romeo y Julieta box on a flatbed are the hands that build WordPress for media companies and post-secondary clients now.
The other thing this piece shows, which I think is harder to fake: I figured out how to build a useful site for a real business before there was a class to take, a framework to install, or a tutorial to follow. The Walper needed a way for cigar buyers in other provinces to find them and order. I made that happen with the tools that existed. That is the whole job, then and now. The tools changed. The job did not.
What it taught me
a few things from this build still run through how I work.
The owner of the Walper did not care about HTML. He cared about whether his out-of-town customers could see what he had in stock and reach him to order it. Every decision on that site, including the ones I would do differently today, was made in service of that. I have never met a client whose actual problem was “I need a website.” The problem is always one layer up. The website is just the tool you reach for to solve it.
Building the assets yourself, when no one else has them, is sometimes the right answer. The cigar-size ruler was the most useful piece of content on the Romeo y Julieta page. It existed because I sat down and made it. That habit — when the thing you need does not exist, build it — is most of what I do for clients today, except now the thing is a custom block, a plugin, a learning module, a schema implementation.
Putting your name on the work matters. I signed every page on the Walper site. I sign every commit, every plugin on wordpress.org, every talk I give. If my name is on it, it is mine, and I will defend it.

What I would do differently
a lot, honestly. The marble background tile would go. The layout tables would go. The fax field would go. The form would not post to a mailto: handler. There would be a privacy policy. The cigar photos would not be scanned GIFs.
What I would not change is the decision to take the job in the first place. a young developer with no portfolio cannot wait until they are qualified to start. The Walper’s owner took a chance on me because I was the kid in town who said yes and then figured it out. I have tried to pay that forward every year since.
The throughline
The Walper site lived at a tilde-user path on a regional ISP. My work now lives at This Is My URL. Same hands, same job, different decade.
a client has a real problem. The web is part of the answer. I find out what they actually need, build the tool that solves it, sign my name to it, and stand behind it. The Walper is still trading. So am I. The original capture is on the Wayback Machine, Romeo y Julieta page and all, if you want to see what 1996 actually looked like.
Read next
- What 15 WordCamp Talks Taught Me About WordPress Careers. The longer arc that started here in 1996 and is still going.
- From Layoff to Consulting: What the First Year Costs You. How a career that started with the Walper site eventually shaped into the consultancy.
- Canadian Foundation for the Americas. A site from a few years later — same era of "everything is custom and most of it is improvised."