DEV Community

Ben Halpern
Ben Halpern

Posted on

I have some bad habits that date back to my days making Geocities websites before CSS was much of a thing

Experience can be a bad thing. It is this that makes junior developers such a positive part of any team. Folks from different backgrounds who never learned the bad habits of those that came before them.

By bad habits, I mean little things where I use a certain HTML tag or attribute that you'd only use if you started using it before the other thing existed. These things stick.

To all the code newbies out there, you have a perspective I can't possibly have anymore, and a certain skillset orientation that I will never have. Bring this awareness with confidence into your next job interview.

Geocities is definitely my coding origin story. Folks that came up on Commodore 64 or anything else have their own versions of this. We still bring a lot of value, so don't think of us as dinosaurs, but we need new blood all the time in this industry!

Discussion (39)

Collapse
thebouv profile image
Anthony Bouvier

Huh. This may be one of the few times I don't quite like one of your articles, Ben.

I mean, I get what you're trying to say, sort of.

But you only talk down about experience, instead of showing both sides.

In an industry plagued by ageism and "replace all the experienced people with fresh out of college kids cause they're cheaper", I worry how this post comes across.

Collapse
sbinlondon profile image
Kate Beard (she/her) • Edited

I certainly donโ€™t think heโ€™s being ageist at all! He is just writing a quick pep post for people entering the industry who may not be very confident (hello ๐Ÿ‘‹ it me).

Saying that, I can completely understand what it must be like to be an industry veteran and see lots of posts geared towards juniors. What Ben has done here is say that newbies have perspective he canโ€™t possibly have - I think that goes both ways. Experienced devs have perspective that I wonโ€™t for many years and thatโ€™s awesome. I know I have a lot to learn from them and I certainly am not in here thirstily rushing to replace them.

If you feel weโ€™d benefit from hearing an experienced devโ€™s perspective (I think we would!) and offer yours in a way that doesnโ€™t minimise othersโ€™ experiences, then Iโ€™m sure tons of people would love to hear it.

Collapse
thebouv profile image
Anthony Bouvier

I don't think Ben was being ageist.

But the succinctness of this article is basically summed up as "Juniors have a fresh perspective" ((I agree)) "and experienced devs have bad habits that can't be corrected".

Almost a "can't teach old dogs new tricks" and the article itself isn't ageist; but in an industry that is ageist, it feels incomplete to me. That's all.

Though on re-read I can see he's specifically talking about himself and the post is too short to go into detail or his opinion on any of the presented topics in depth, so my initial reaction is definitely overkill.

So I retroactively would rather say: I'd rather see a long form article on what you're feeling/discussing here because the short version is vague enough to have a weird message? Something like that. :)

Thread Thread
sbinlondon profile image
Kate Beard (she/her) • Edited

Ah sorry, I misread โ€œin an industry with ageismโ€ as you saying the post was ageist. My bad! Agree that long form stuff on both sides would be really interesting.

Re: your other reply, Geocities and Angelfire were also where I got my very basic start as a teenager (and Expages too if thatโ€™s the third one youโ€™re thinking of?) I sometimes think what my career would be like now had I stuck with it ๐Ÿค”

Collapse
ben profile image
Ben Halpern Author

Thanks for the note Anthony.

I thought about this when writing it, and I tried not to be ageist. I've always equated ageism with age and a culture of disrespect in that regard rather than experience level per se. Like, if a 45 year old is looking for their first dev job, they might experience ageism due to perhaps not fitting in culturally with a team made up of 25 year olds.

That's just an explanation of my reasoning here, and I'm definitely taking what you said to heart.

Collapse
andrewbrown profile image
Andrew Brown ๐Ÿ‡จ๐Ÿ‡ฆ • Edited

It appears Ben pumps out micro-content on daily. I can see a positive message. I would just give him the benefit of the doubt that he slapped this one together and he's just working on a time constraint.

Collapse
ninjabunny9000 profile image
๐Ÿ’พ bun9000 • Edited

One of the things I love most about DEV is that you don't need to post a massive article or blog to have a space to share your thoughts, tips, knowledge, opinions. Let's try and keep it that way!

Collapse
mburszley profile image
Maximilian Burszley

I think this comment is tech debt and needs a junior to rewrite it from scratch without guidance.

Collapse
ratherbsurfing profile image
Chad Collins • Edited

Dear Ben
Not to fear, you can bring your old school tricks to the future.

npmjs.com/package/react-blink-tag

Collapse
aimerib profile image
Aimeri Baddouh

New Dev.to PR:
HOC from react-blink-tag and npmjs.com/package/react-marquee to create tags.

Collapse
metalmikester profile image
Michel Renaud

oh noes....!

Collapse
thebouv profile image
Anthony Bouvier • Edited

Also want to point something else out:

I'm with you on GeoCities (and AngelFire and ... there was one more I can't remember).

Got my start there too honestly and I was building out crappy websites for online RPGs I was playing. And that honestly got me started as a programmer. First with HTML for GeoCities, and then quick quickly into Perl to write my own chat system. I owe my career to those crappy RPG sites I made. :D

EDIT: waves to anyone who remembers RPG chats on WBS/NexusRP back in the day

Collapse
byrro profile image
Renato Byrro

I agree. Curious when someone will start talking about 'crappy React sites got me started into web dev in the 2010's'.

It's all going to be crap. Looking at React now looks shiny and cool. Looking at it with 2030's view is crap.

Collapse
thebouv profile image
Anthony Bouvier

What if I think it is crap now? LOL.

Collapse
mellen profile image
Matt Ellen

one more I can't remember

Lycos, perhaps? I think I made something on there.

Collapse
garrett profile image
Garrett • Edited

In Zen Buddhism we have something called โ€œbeginners mind.โ€ You must always keep a beginners mind.

Thereโ€™s a parable I love...Iโ€™ll update it for the context.

A coding expert goes to a coding guru to learn more about development. He says โ€œIโ€™m an expert in web development. Iโ€™ve been doing it for a decade. But youโ€™re so much better. I want to learn from you.โ€ And so the guru says โ€œOf course. Sit down and letโ€™s start with a cup of coffee.โ€

He pulls out a couple mugs and heats up the water, brews the coffee, and starts pouring a cup of coffee for his new student.

The mug fills up and he keeps pouring. Coffee is spilling everywhere.

The expertโ€™s like โ€œDude what are you doing? Youโ€™re spilling coffee everywhere. Stop pouring.โ€

The guru says โ€œYou are like this mug. You are so full that I can not put any more knowledge into you. You must go empty your mug and then come back to me.โ€

Hope that helps.

Collapse
olistik profile image
olistik

Another way of saying this there is:

You must unlearn what you have learned

Collapse
ninjabunny9000 profile image
๐Ÿ’พ bun9000

I'm just here wondering why dev.to doesn't have a guestbook?? What kind of establishment is this?!

Collapse
ben profile image
Ben Halpern Author

You kid, but that's a legit great idea.

Collapse
ninjabunny9000 profile image
๐Ÿ’พ bun9000

Hey, it can either go really well or really wrong. xD

Collapse
scott_yeatts profile image
Scott Yeatts

SAME (Geocities was amazing for the time)! bold vs strong, i vs em... I still remember when CSS came out and thinking it was AMAZING... and now I overuse divs and struggle to remember that semantic HTML is a lot more than just arias (article, aside, details... I had to look those up just to remember they are a thing). Fight the old-school fight daily!

I value less experienced engineers because of this. I might have seen 15 different ways that what you're building is going to become spaghetti 6 months from now, but I'll also see a tag, or a function form or something that I just didn't know existed in that code review too. It helps your whole team to be better when you have that mix of experience. I'll help with the structure (and it's important to explain so teammates aren't forced to learn by experience) but they will help with the syntax (and it's important to get the reasoning for using it so I can keep growing as a dev too).

Collapse
elmuerte profile image
Michiel Hendriks

you have a perspective I can't possibly have anymore

I call bullshit. I think I'm from the same "era" as you are. One of the reasons I frequent dev.to is to, kind of, get this perspective.

Most content is geared towards frontend-ers, especially web-frontend-ers (just to show my alleviated age). I have vested my background in tools and frameworks, especially backends.

I frequent the frontend newbie content, to kind-of keep up with what ever they introduce this time. Which is still quite a lot. But do I have bad habits? Not really.

I have some established habits, and I am learning new better habits. I started with

to align. I moved to when it was only a block element. I will move on to flex box when the time is there*.

The only bad habit is to stay stuck in time with your mindset. Note, You do not have to keep up with everything.

*) I work on enterprise software where you ESR/LTS releases of browsers are "fancy". Usability trumps looks by an enormous distance. If I was working in a more consumer focused marked I would be looking at different things.

Collapse
byrro profile image
Renato Byrro

I worked with Geocities as well.

There will be a day when someone will write about 'bad habits from when I was writing those dinosaur React apps'. Nothing bad about it. As anyone can see, React is shiny, popular and a nice piece of tech. Just as Geocities was, back in 1990's.

Fast-forwarding 20 years won't make React a bad thing today. Just as fast-forwarding 20 years don't make Geocities something bad in the past.

I know it's not what you meant. Just wanted to get these thoughts out! ๐Ÿ˜‰

Collapse
jackharner profile image
Jack Harner ๐Ÿš€

Do you have any examples of things you still do that you probably shouldn't? Curious to see what stuck around for you from those days.

Collapse
ben profile image
Ben Halpern Author

Little things like forgetting the strong tag exists in HTML and always using b regardless of semantics, or using less useful ways to align items like floats and things because I was doing that before other options came along. I found myself using tables for way to much for way too long too!

Some things were easier to shed than others, like using images for rounded corners. Those were easy to never look back on!

Collapse
jackharner profile image
Jack Harner ๐Ÿš€

Thank CSS for Flex, Grid, border-radius, and everything else!

Bart Simpson Saying Testify

Collapse
mjsarfatti profile image
Manuele J Sarfatti • Edited

I see what you are saying, and mostly agree (reason why I like to collaborate with a junior right now and be exposed to that kind of energy). But I've also seen juniors attaching onClick handlers to spans...

Collapse
ferricoxide profile image
Thomas H Jones II

Though, sometimes, being the dinosaur can work for you...

(New to Platform Person): "Why do you use <X> construct in your code."
Me: "A couple decades worth of ingrained habit and I know that it works everywhere"
NtPP: "Ok. Mind if I use this newer method?"
Me: "Sure. If stuff works and lowers the amount of effort we have to expend, 'go for it'."

Me: "Remember when when you asked me why I used <X> construct and I said that 'I know that it works eveywhere'?"
NePP: "Yes...?"
Me: "Know that customer that was bitching about the tool you delivered?"
NtPP: "Yes...?"
Me: "Ironically, the fix for their problem was to use the method you originally questioned."

Collapse
hexangel616 profile image
Emilie Gervais

๐Ÿ‘จโ€๐Ÿ’ป gifcities.org/?q=coding

Collapse
angeliquejw profile image
Angelique • Edited

Bonus to those Geocities days: the first time I was faced with coding an HTML email, I didn't need to have the reliance on tables for layout explained to me at all ๐Ÿคฃ

Viva la table!

Collapse
steelvoltage profile image
Brian Barbour

I was more of an Angelfire guy, but I feel ya. I do love Semantic html, and have started using elements like main, article, aside, section, figure, etc...

Collapse
metalmikester profile image
Michel Renaud

I still have bad habits. Knowingly. I know there's a better way to do it. I'm too lazy to look it up. I'll go to my room with dinner.

Commodore 64. Those were the days. Oh yeah.

Collapse
olistik profile image
olistik

๐Ÿ‘๐ŸปBeing open to contamination while building opinions on the best ways to solve problems is the balance every developer should keep aiming for.

Collapse
deepu105 profile image
Deepu K Sasidharan

True indeed. Some habits just get stuck with you forever.

Collapse
brianlovega profile image
Brian Loveless

Thanks for a ray of hope to hear as a new developer at a not fresh out of college age.

Collapse
erikthered profile image
Erik Nelson

I still tend to overuse divs since I started back with HTML4

Collapse
jenc profile image
jen chan

The blink tag was great and so was the marquee, I will never forget those days.

Collapse
ericis profile image
Eric Swanson

geocities ๐Ÿคฃ

Collapse
letmypeoplecode profile image
Greg Bulmash ๐Ÿฅ‘

As I like to say, I have bad coding habits that are old enough to drink.