DEV Community

Cover image for Updating A 25-Year-Old Website

Updating A 25-Year-Old Website

Mads Stoumann on June 19, 2021

As frontend developers, we always want to use the latest and the greatest. A lot of the time however, the clients we work for, are dependent on old...
Collapse
 
grahamthedev profile image
GrahamTheDev

Just shows that we don't need the latest and greatest for everything. New site looks nice, is fast to load, gets to the point and follows a lot of best practices.

Recycling the old bits that still work is 10 times faster than rewriting everything and perhaps this could serve as a warning to the "new and shiny" brigade that you don't need to upgrade everything if it is still fit for purpose.

Collapse
 
madsstoumann profile image
Mads Stoumann

I agree, and I think we often re-invent the wheel in frontend.
The new and shiny is great for developers and the developer-experience, but for end users there's no noticable difference.
A “Product Card” is a “Product Card” for the end user, no matter if it was done in Classic ASP or React ;-)

Collapse
 
hasnaindev profile image
Muhammad Hasnain

One of the best posts I read over dev.to. I was born in 1998, you have more experience than for how long I've been alive. The initial website you created is absolutely beautiful and reminds me of Windows 98.

Also, I love one of your reply, "A “Product Card” is a “Product Card” for the end user." Strive for simplicity, use the bare minimum, make things simple rather than complex. Glad to see an actual senior developer sharing wisdom with us. Thank you!

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you so much! I'm amazed you know Windows 98, when you were born that year! Until recently, I kept my original Windows 3.1 floppy disks and Windows 95+98 CD-ROM's ...

Collapse
 
aromeropm profile image
aromero-pm

I suspect Muhammad knows Win98 from an engineering-archaeology class... :) Floppy Disks are the stone cuneiform tablets of the Internet.

I have a 23 year old site I need to do some maintenance on or maybe migrate to Wordpress, just for the sake of posterity. It's Classic ASP plus "Windows Script Components" and a little ASP.Net in one or two places. Truly horrorshow. The idjit who wrote the code -- namely, me -- clearly didn't know what he was doing.

Thread Thread
 
madsstoumann profile image
Mads Stoumann

I also thought "who the hell coded this s***" when I looked at my old code!

Thread Thread
 
aromeropm profile image
aromero-pm • Edited

I found a comment in my code that read "This function is unmaintainable garbage" :) which is to say that even when I wrote it, I knew I shouldn't. Believe me, no one else EVER touched this code, so that had to be me.

Thread Thread
 
madsstoumann profile image
Mads Stoumann

😂

Thread Thread
 
hasnaindev profile image
Muhammad Hasnain

In early 2000s computers in my country were very rare and where I lived, there were extremely rare. My dad got us Pentium 3, it was darn expensive. Windows 98 was the first Windows I used.

It was only a few years later we installed Windows XP. Also remember playing Age Of Empires one and two. Good old days. I never used a floppy disk myself but saw my brother used it once. CDs were the norm though.

Thread Thread
 
madsstoumann profile image
Mads Stoumann

Cool! Performance was SO important back then - 2-4 MB websites, as is the norm today, would take minutes to load.

Collapse
 
_joshsommer profile image
Josh Sommer

I've clicked the unicorn badge many times. I have never read an article I've felt is more deserving. Kudos!

Collapse
 
madsstoumann profile image
Mads Stoumann

Wow, thank you very much!

Collapse
 
ashurali profile image
Ashurali • Edited

Gotta say the new website looks sleak and performs well.
Really hits the point that codes are, at the end, a tool that properly used can always gives you great result.

Problem is, properly using it really takes experience 😅

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you! And I agree, if you really know HTML, CSS and JS, you can do anything 😁

Collapse
 
phantas0s profile image
Matthieu Cneude

That's a great display of problem solving skills, instead of trying to force the use of the latest trends because it's the answer to every possible problem. Nice!

I'm curious: do you think the dated website was really the cause of their difficulties? Do they know why they could survive and thrive again?

Collapse
 
madsstoumann profile image
Mads Stoumann • Edited

Thank you! Fantask has a store in Copenhagen (actually, it's the worlds oldest existing comicbook store, founded in 1971) - and like other bookstores, they saw a large proportion of their sales switch to online. And then, becuase their online store was dated and malfunctioning, they lost a huge potential ... and saw a decline in revenue, both online and in-store. Since the new website was launched, they've increased their online sales significantly, but having a bookstore nowadays is not a lucrative business.

Collapse
 
huncyrus profile image
huncyrus

KISS at finest :)
Thank you the insider info of updating a monolithic dinosaur :) How was the original data connection arranged? like spaghetti code, everything everywhere or was some minimal model files? How long was the original code? Just a few file and few hundred lines?

Collapse
 
madsstoumann profile image
Mads Stoumann • Edited

It was structured, but not how you'd structure it with a bit more experience! The main "default.asp" was a huge Select Case (same as switch in JS), that took a pageType from the url, and returned the function matching that!

Collapse
 
jrbirdmanoh profile image
jrbirdmanOH

As a 65-year-old developer who started building sites back in 1992, I concur and often long for the days when things were simpler. Then I go back to writing web apis that use an ORM framework and feed angular components from an MVC controller....and that feeling goes away. :)

Collapse
 
madsstoumann profile image
Mads Stoumann

I mostly work with Vue nowadays. But I also do a lot of "vanilla projects" without build-tools, as it's way faster for me.

Collapse
 
cjsmocjsmo profile image
Charlie J Smotherman

Exactly, if the code compiles, runs, and does it's job, it's good code no matter how old it is.

Good read

Collapse
 
madsstoumann profile image
Mads Stoumann

Thanks!

Collapse
 
daniel15 profile image
Daniel Lo Nigro • Edited

The site looks great!

You should consider using IIS URL Rewrite to remove the .asp from the URLs. It's pretty straightforward to configure. :)

For reasons unknown, it's still supported by Microsoft (or = it still works), even though it was replaced by .Net in 2002, and the last stable release is more than 21 years old!

Surprisingly, it's actually still occasionally getting some very small bug fixes. It's still officially supported by Microsoft until 2025, including any major bug fixes.

Collapse
 
madsstoumann profile image
Mads Stoumann

It's amazing they still maintain these old technologies!

Collapse
 
idosius profile image
Ido Schacham

Thanks for the excellent post and inspiration. Note that you are wrong about one thing - this is possible in the real world!

I used to work as a freelancer without BE developers and project managers, so making smart decisions not to throw everything away but to keep the core and vamp it up is definitely possible in such a constellation.

Such an excellent example could also set a precedence for big companies where there are many stakeholders to reconsider how to go about doing such a project in the real world, so kudos for that.

Collapse
 
madsstoumann profile image
Mads Stoumann

Thanks! I think it's only possible for smaller clients - there are too many stakeholders on larger projects (and companies!)

Collapse
 
vurso profile image
Trevor

Enjoyed reading your article sent me down memory lane 🙂

Recently I was asked by a friend to build him a 'newsletter subscription page with admin' - being a donet dev by trade it got me thinking how do I come up with a solution on a Linux hosted environment and here php was simply awesome so light I had implemented auth, session handling and displaying data from a MySQL dB.

Important point here is the fun factor I was smiling and enjoying the work I had to learn php but didn't take long its so well supported and mature now and it really does fit its niche perfectly so this has completely changed my approach to freelance work (for the better).

Collapse
 
madsstoumann profile image
Mads Stoumann

PHP is in some ways the succesor to Classic ASP - if you could upload a static database-file, like an Access .mdb, it would be very similar.

Collapse
 
robole profile image
Rob OLeary • Edited

Enjoyed this story a lot. The reality is old tech works fine in many cases, and it may not be worth it for a small business to replace things like you discussed. Using modern HTML and CSS with a sprinkle of JS will take you a long way. I think there is a fixation on large scale businesses these days, and we forget about smaller businesses with simpler needs and less resources.

I did my final year college project in ASP, even though ASP.NET was around, because I got a well-written book on it in a sale bin and I was a poor student! I wish I had the code to look over it now. Glad to head Fantask is still going. As a comic-book lover, I will look to visit if I make it to Copenhagen. Thanks for sharing 😀

Collapse
 
madsstoumann profile image
Mads Stoumann • Edited

Thanks! I agree, small businesses cannot afford the multitude of services required to run a modern webshop, if it's more than a few hundred products. And please do visit Fantask! It's been on the same corner in Copenhagen for almost 50 years, and has been visited by many famous artists through the years: Stan Lee, Carl Barks, Will Eisner etc.!

Collapse
 
jdcdev profile image
Jose Daniel

I can completely relate to this post. I'm not a full time developer but I learned the basics of web development back in 2010. It was straight to the point: HTML, Js and Css for front-end. C# or PHP back-end and a good LAMP setup. Since then many frameworks have been added and sometimes I just wonder if many of them are really necessary or add value. I don't have the answer but I believe simplicity is better as long as the main goal is reached without compromising efficiency and reliability.

Collapse
 
madsstoumann profile image
Mads Stoumann

I agree, simplicity is always the right path!

Collapse
 
metric152 profile image
Ernest

Every once in awhile I'll have to revisit a page I wrote in the early 00s that's either PHP or Classic ASP. All of the code is so nested and awful. All the mistakes you make as a junior dev.

Working with Classic ASP was painful if you needed to manipulate strings. I had to go that direction because the server at the office was NT. The site rarely went down but I pushed it pretty hard.

Collapse
 
madsstoumann profile image
Mads Stoumann

Yeah, revisiting old code can be painful! And I had completely forgotten a lot of the syntax, like ReDim Preserve 😆

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you! They use the Windows VBA app, I wrote back in 1993-94 for all data-entries: products, customers, webpage-content etc. A subset of these data are then exported and synced with the web db.

Collapse
 
chaosfixx profile image
Tabatha Ours

Judo!!! This is a great display of refactoring 😎

Collapse
 
madsstoumann profile image
Mads Stoumann

Thx!

Collapse
 
iakovosvo profile image
iakovosvo

Very inspiring article Mads! I also like the original 1995 design :)

Collapse
 
madsstoumann profile image
Mads Stoumann

Thanks! Maybe that retro-look will come back!?😂

Collapse
 
mohamedhagag profile image
Mohamed M. Hagag

@madsstoumann great article reminded me with the old good days of computer programming and internet.
And If I were fantask I will give you a profit share after passing the bankruptcy, you really deserve it.

Collapse
 
madsstoumann profile image
Mads Stoumann

I get free comics now and then!

Collapse
 
dimsane profile image
Dwaipayan Sen • Edited

It is morning here in India right now. This is the first article for today and for a few days that I have read cover to cover. And my day has found a new bloom. I cannot thank you enough for the pains you have taken to put this up for us and Fantask for that matter! It felt like a fairytale of eternity in the world of computers which smelled of just-unwrapped Boomer chewing gums. Please write more, of this or any other genre, as you please. Just please don't stop writing. And today I have a got a new friend sharing my birthyear i.e., Fantask.

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you, very glad you liked it!

Collapse
 
chinmayghule profile image
Chinmay Ghule

I have to give in to you! I actually expected the website to fail when I tried to open it on my mobile, but the website has not disappointed me. It's simple, clean and very FAST! Kudos!

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you! I had to brush up on my knowledge about ancient database connections (ADODB with Classic ASP), but was also surprised that it's pretty fast!

Collapse
 
deadjdona profile image
Dead J. Dona

Such a good decision to help them and very kind of you. Helping each other in such times is really important.
Also you had a lot of fun obviously, 7 days instead of few months, godly pleasure ^_^

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you! A bit pressed for time, but fun!

Collapse
 
samuellealb profile image
Samuel Leal

Read it great interest as front dev and comics geek, to find out in the end that the author is also a (kind of) work colleague! Great post, great work!

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you! And yes, I'm a comic geek too ;-)

Collapse
 
samuellealb profile image
Samuel Leal

And a valtechie too!

Thread Thread
 
madsstoumann profile image
Mads Stoumann

😀👍

Collapse
 
bibekkhatri profile image
Bibek Khatri

Nice Write. Thanks for sharing. I'm willing to know that if it is possible to migrate a classic ASP site to .NET Core?

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you! No, it’s not possible to migrate directly.

Collapse
 
pencillr profile image
Richard Lenkovits

Wow such a great story! I admire your helpfulness.

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you!

Collapse
 
ratrateroo profile image
ratrateroo

Great work sir. This inspires me a lot as a developer. Thanks sir.

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you!

Collapse
 
jumbo02 profile image
Jumbo Daniel

Great work, it shows that we dont need to always reinvent and use the latest web developement tools to get things done. The design is simple, nice and still appealing to the visual aspects.

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you very much!

Collapse
 
thabisomagwaza profile image
ThabisoMagwaza

Good job man. The new site is super fast and functional🔥

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you!

Collapse
 
jonesydev profile image
jonesy-dev

Flot stykke arbejde.

Collapse
 
madsstoumann profile image
Mads Stoumann

Mange tak!

Collapse
 
cristoferk profile image
CristoferK

Good job!

Collapse
 
madsstoumann profile image
Mads Stoumann

Thanks!

Collapse
 
vinthefantastic1 profile image
vinthefantastic1

The new site looks great! It's super speedy and responsive to boot! Fantastic work.

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you!

Collapse
 
pietervanuhm profile image
Pieter van Uhm • Edited

Nice job, maybe consider URL Rewriting to make it a bit more prettier

Collapse
 
madsstoumann profile image
Mads Stoumann

Yes, I need to look into that. Not sure if it even existed back in the 1990’s! 😂

Collapse
 
mbdunson profile image
M. Brian Dunson

This is fantastic! Well done and thank you for sharing this very inspiring story!

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you!

Collapse
 
lasertuskey profile image
Alexa Tuskey

I can't believe you only did it in 7 days. Incredible work!

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you! I was a bit pressed for time!

Collapse
 
pastuh profile image
pastuh

0.25 border solved everything. GJ

Collapse
 
tcelestino profile image
Tiago Celestino

Nice works! It’s great tbecause I think that your knowledge increased a lot.

Collapse
 
madsstoumann profile image
Mads Stoumann

Thanks!

Collapse
 
jcode07 profile image
Justin Comeaux

Best article I ever read on here! Thank you for sharing this! :)

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you!

Collapse
 
kernelsoe profile image
Kernel Soe

1993 born here! Your first version is not hurting eyes, actually it’s sparkling 🤩

Love your post!

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you!

Collapse
 
mufidu profile image
Mufid

Fantastic. It makes me think again before going deeper into other "latest" frameworks. Thanks!

Collapse
 
madsstoumann profile image
Mads Stoumann

Glad you liked it!

Collapse
 
victhereum profile image
VICTOR ISAAC

That's some lightning fast site, it was as if it was waiting for me to click on the link. Good job Senior

Collapse
 
madsstoumann profile image
Mads Stoumann

Thank you!