From CSS Hater to Curious - A Personal Journey Through Web Tech
While reading my RSS feed this morning, I saw a post praising something wonderful about CSS, and my first thought was, "Ugh. CSS". That wasn't fair. CSS doesn't suck anymore.
I remember when CSS first came out, and the first thing I did was play with it. It was the 90's [1] , and I had a Packard Bell Pentium computer in my living room / dining room, which was rare. Very few of my friends or neighbors had one in their home.
I was a Math/Physics Secondary Ed major at the time, [2] so most of my computer usage was writing school papers in Word Perfect 5.1 [3], talking on IRC with random guys in the "warez" channels, and trading the brand new music format - mp3s.
There was a somewhat jerky young guy who was playing with something called Linux [4] that nobody I knew had really heard of. I tried it a few months later, and it took several days to really get my Internet access working. But, I definitely learned a lot. One of my other IRC buddies was learning a bit of HTML, and I started playing with it too.
CSS and Microsoft's Internet Explorer seemed to come right around the same time in my memory, and most of us were switching to IE from Mozilla. One thing that stood out to me about CSS was that I could take the same transparent image and use CSS to make each copy appear a different color. Back then, we tried to optimize every kilobyte in our web pages, and I thought this was super cool. I made a sample page with red, green, and blue stars. People on IRC were not impressed.
We learned how to position things on our pages using HTML tables and transparent spacer pixel images to push things to the right size and position. CSS was rapidly getting new features, but support across browsers wasn’t guaranteed. We stuck with the reliable things that all browsers somewhat supported and ignored the new stuff.
JavaScript was starting to become a thing too. Somewhere around this time, I changed majors in college, dropping physics and secondary education for applied mathematics. I took a class in C and another in C++, and started dating a Computer Science major. I later added a minor in Computer Science just to prove to him how easy it was.
Kutztown University was just starting to get departmental websites, and Dr. Bette Reagan [5] set up one of the first online courses the University offered.
You had to work hard to make any web page perform the same in different browsers. Each had its own rendering engines and JavaScript interpreters. So, I grew a visceral hatred of the inconsistencies of CSS and JavaScript. They sucked so much.
In early 2000, I learned Perl and started modifying forum software from Infopop. When the no-database forum overloaded my ISP's shared server space, I switched to vBulletin and PHP. To me, PHP was refreshing because it was server-side. If I got the code working on the server, it would work for everybody - regardless of their web browser.
My initial feelings about PHP were positive. I still default to PHP when I'm trying to figure out a programming problem. Other people who came to it later after other web languages were available [6] thought it sucked. They weren't necessarily wrong, but by then, I loved it. I was far too broke to afford Microsoft's dev tools, so the LAMP stack became my home.
Around 2007, I started using the Yahoo User Interface library (YUI) for style and JavaScript. I was "Full Stack" out of necessity. I worked for what we would now call a startup, and money was tight.
In 2012, I hired a young programmer who loved JavaScript, which I thought was nuts. At the time, we used jQuery and Bootstrap. I preferred using a framework to keep CSS and JavaScript simple and basic because, you know, CSS and JavaScript sucked.
But, something happened along the way, and JavaScript stopped being absolutely awful. I actually LIKED playing with React, and started a project to separate my company's front end code from the backend with a real API. Don't get me wrong, I absolutely abhor the extremely short attention span of the JavaScript community. It seems the tools to package and deploy code change every five seconds. It's Grunt or Gulp one second, then npm, Yarn, or pnpm the next. Then, there's webpack, Svelte, Deno, and who knows what else. It's a lot, and I'm surprised front end devs haven't burned out and switched to a career in farming.
But CSS? Keep that Voodoo shit away from me.
Except, it looks like CSS has improved while I wasn't paying attention. I get annoyed when people dismiss PHP without realizing it has matured into a solid programming language over the years. It also seems like CSS is improving and no longer needs to be converted from SASS or LESS. So, maybe it's time I take another look at this CSS stuff.
1995? ↩︎
Even though I loved computers and programming, I didn't think there was any sort of job opportunity there. I needed something safe and secure. Luckily, I reconsidered and switched majors. ↩︎
The pinnacle of word processors. I'll fight you on this. ↩︎
Slackware, if you're interested. ↩︎
An English professor, of all things. I never expected the English department to be a technical pioneer. ↩︎
C#, etc. ↩︎