How "solid" of a craft is Front-End Development

Hey all, Jim here.

I am on a good leg of my development journey. I am working in MKE as a part time developer. I have not been very active on FCC since I was hired.

I am looking for an answer to a question, or maybe even a set of feelings.

As a developer, sometimes I feel like what I am doing is “cheap.” I also feel like the field of front-end development lacks that deep and meaningful history that other fields of study have.

Once upon a time I was a chemical engineering student. One of my favorite parts of studying was reading about the brilliant discoveries that occurred in the 1700s, 1800s, and how the field of chemistry built on top of those discoveries.

In contrast, JavaScript was written in a matter of 10 days I believe. HTML has some cool history attached to it (it was born out of SGML, developed by a lawyer). But overall, these are really recent developments, and I lack the computer engineering background to really dig deep and understand the giant whose shoulders front-end development stands on, and it leaves me not only wanting more understanding, but feeling groundless and shallow.

I’m sure a lot of it has to do with mathematics and electrical engineering, but for better or worse it seems like there is a disconnect between Front-end development and electrical engineering/computer science.

To put the question more bluntly: who the hell came up with all this shit?

Where is the historical rooting for this craft? Will JavaScript just be washed away in the tide someday, never to be spoken of again (along with all the programs we write)?

Is their such thing as “heirloom quality” codes?

What code has really changed the way you look at the world? What code has really made an impact and shook the earth?

How is front-end development rooted in the larger scheme of our civilization? How did we get here and where are we going?

PS: I am about 9 months into my web development journey.

1 Like

Before Javascript, it was all server-side processing.

The web server serves plain HTML document, and browsers back then were just treated as “dumb terminals” that only display the received HTML file. i.e. back then, it was all text… no embedded graphics. That will come later.

If you want interactivity, you do it on the server-side, via Perl, via CGI. Back in the “good o’le days”, you have Archie and a Gopher, and you can finger Veronica.

JS was the attempt to bring some client-side processing and smarts on the web browser. So the server doesn’t have to do all the work.

The primitive browser back then was something called Mosaic. Then a company called “Mosaic Communications”, later renamed Netscape decided to make a “Mosaic Killer”, a more advance browser… from Mosaic Killer, we get “Mozilla”… you know, like Mosaic Killah… MosaicKilla… Mozilla.

1 Like

Haha - you just made that up, right?

Nope… while the other story is it’s a combination of Mosaic and Godzilla, and that’s why the mascot is godzilla… the true origin is the browser they’re making was meant to be a Mosaic Killer.

Video

1 Like

Interesting. It seemed like a stretch. Guess I learned something new.
I’m feeling nostalgic about the early days for some reason. I’m remembering the days when I hooked up my computer to our modem and used Links (or Lynx I don’t remember) and Compuserve. Then Mosaic and I was in awe! It was exciting times.

Indeed exciting times.

Compuserve/AOL were “walled-in” gardens. When an Internet provider in San Diego started offering real Internet access, I jumped on it… and you had to select whether you want SLIP or PPP connection.

Back then I also ran a BBS (Bulletin Board Service) and to send email, it was a nightly batch job sending the messages via FIDONET and phone lines. Then FidoNet added an Internet gateway so any BBS user can send an email (which are all publicly viewable and readable, as they’re just plain text files) to any Internet user with an email address.

I remember first using Mosaic.

I remember BBS and Usenet.

Just because the original version of Javascript was written rapidly, doesn’t mean that is lacks history. Javascript is just one of a big family of languages based on C. In fact, all of the most commonly used languages today (Java, Python, PHP, C#) are based on C. I guess it was because Bendan Eich (the Javascript creator) was not working from scratch that he was able to build the language so quickly.

Anyway, maybe C does have the kind of heritage you are looking for?

https://en.wikipedia.org/wiki/C_(programming_language)

As for front end development, I guess it is really just a jigsaw piece in the bigger story that is the history of the internet. Learning a bit about HTTP and networking is quite helpful on this.

How is front-end development rooted in the larger scheme of our civilization? How did we get here and where are we going?

The last bit is easy. IT will put everyone else out of a job except software developers. Then, one day soon, we will all be killed by a rampaging mob of unemployed shop workers and taxi drivers.

Happy coding!

1 Like

Imagine you are a “heating engineer” specialising in a specific kind of boiler. Sure, you could say the craft of heating engineering for the Baxi-200 GigaBoiler is built on centuries/millenia of engineering improvements, on research into plastics, corrosion, thermal transfer, legislative breakthroughs, whatever. You could join that all together in some story that makes noble the image of you, rooting around the back of the cupboard under Mrs. Jones’ sink, looking for the stopcock she swears is there .

So in another awful analogy, imagine what is termed front-end development is equivalent to something like magnolia shades of household paint. You may have, as a student, stayed awake at night, breathlessly reading up on the exploits of the pioneering chemists who first synthesised magnolia-coloured paint, and how that led up to the point where magnolia could take up its crown as the nation’s ubiquitous shade.

It is an implemetation detail.

Programming languages are just tools used to automate certain classes of task. A front end developer is someone who know a specific set of tools that relate to programming web user interfaces. It lacks a deep and meaningful history because it’s just not that important in the grand scheme of things; it’s not a whole discrete scientific/engineering field, it’s a skilled trade.

It happens to be that, at this particular juncture, knowledge of a certain specific set of tools currently translates into [skilled trade] jobs. As a comparison, if you knew how to set up and maintain a cotton gin in the early 1800s you’d very likely be able to find well-paid employment.

Yes, probably.

Again, it’s just not particularly important. Where do people who worked on video [Betamax or VHS], or cassette tapes, or CDs fit into the larger scheme of civilization?

See this is interesting. I didn’t know JavaScript was based off C. I don’t really plan on brushing up on C anytime soon but it still is cool to know that JS has deeper roots than a defunct 90s browser.

I think VHS, Betamax, cassette tapes, and CDs all have a place in civilization. The are all non-transient forms of media. Netflix changes daily, Amazon prime changes daily, Spotify chooses what music they make available, radio puts you at the mercy of whoever owns the station.

Most people have gotten used to the idea that “everything should just be in the cloud” and a magical internet sky daddy will take care of everything for them. And completely neglect the abuse of power that has occurred and will continue to occur because of that. Lol. Nope! I want to be able to store my own media sometimes. A lot of people will never see some great films because they are only on LaserDisc.

I’m not trying to sound jaded or anything. The linux rabbit-hole is definitely a neat road to travel on the Front End Development track. Also all the MIT licensing/GNU licensing is really fascinating. It’s really inspiring how much people want to make quality software available to everyone for nothing in return. Both linux and free-software licenses have pretty deep roots IMO…

I meant more like…I worked in the paper industry and there were machines that were sometimes over 50 years old and still ticking. There was a legacy attached to it. It was cool.

I don’t want to be the weird guy clinging to an old computer/machine…but I’m just pointing out the transience of the computer science field both because

a:) I don’t want to learn a skill set over 5 years only for it to be completely useless the next.
b:) It’s important to stop and pause every now and again and look around at what exactly I am spending my time with, what it means, and so on.

I meant more like…I worked in the paper industry and there were machines that were sometimes over 50 years old and still ticking. There was a legacy attached to it. It was cool.

The company I work for used to be a part of Bell Labs. Some of the innovations made there were significant enough to spawn their own spinoff. I walk by those patents every day. There are still a few people around who were part of inventing hardware and algorithms that are now ubiquitous and as we continue to build on that foundation and find new applications for their research I can talk to them about how best to let humans make use of it.

Here’s the reality of Web Development… what you made, developed, spent a lot of time with, challenges, solutions you’ve come up with… IT WILL GO AWAY. IT WILL BE REPLACED.

And then you’ll have nothing to show for it. Yeah, maybe you’ll have the files in your archive, and you have the old site running on your test server… but the actual live site?.. one day, it will be gone, replaced with something newer, better (or not).

The work we do is not permanent. At most, maybe 5 years it will stay around. Some, within a couple years it will be redesigned again. That’s just the nature of the web development field. Old things are thrown away, and new shiny stuff takes their place. If you worked on the old stuff, it’s a little sad seeing all your work chucked/deleted away and replaced.

It’s all virtual, just software… bits and code inside a computer. It’s NOT PERMANENT!

1 Like

So, you are right in that compared to other engineering disciplines, computer science is young. Web development younger still. While I’ve never been a history buff, I can see the appeal… it gives you a sense of continuation, that this path you are on has significance. Well, we know that this path, beyond a shadow of a doubt has significance. It is not only possible that we, this generation of programmers, make world shaking advances, it’s so likely probable that it seems almost impossible to think that we don’t. We can be the giants, the history makers future generations look back on. There were giants before us, and they will be remembered for their contributions as well, but in the next fifty years there will be such civilization changing breakthroughs made by software engineers that through the lens of history, our work has a chance to be seen.

“Oh, but we are just web developers?”, some might ask.

As software expands and the world becomes more automated, there’s a chance that even if you are perfectly content slinging javascript around, building sweet UI’s, and freelancing for local businesses, that you’ll be drug kicking and screaming into more programmatic depth as the pool of work expands. My current employer is trying to get me to fix their industrial automation technology even though I don’t even really have a solid grasp on web development yet, even when I told them it’s completely out of my depth. When that happened, it reaffirmed my belief that this is the right path.

Web development may seem shallow until you dive in, then you realize it was just that the water was so clear you could see what you thought was the bottom. You didn’t see the caves, the tunnels, the architecture and ecosystem. As I slowly start to gain an understanding of what makes it all tick, I can see the translatable knowledge that can be used to navigate other types of software ecosystems. There’s treasure in this ocean, but what a lot of us are doing is mostly learning how to swim.

1 Like