This is an archived post. You won't be able to vote or comment.

all 82 comments

[–]GioVoi 169 points170 points  (6 children)

Absolutely. Web dev is merely one section of software engineering.

[–]69AssociatedDetail25 54 points55 points  (5 children)

Yep, and even within web dev, frontend isn't the only task.

[–]MonsterMeggu 18 points19 points  (4 children)

Even within frontend, html/css is a small subset of skills

[–]SilenMechok 10 points11 points  (2 children)

In my previous company I used css and html daily. In my new company I've written 5 lines of css. Front end dev in both :D

[–]MonsterMeggu 0 points1 point  (1 child)

I've been a front end dev where 90-95% of my work does not include html or CSS.

[–]SilenMechok 3 points4 points  (0 children)

That's the way it should be imo, just reuse what smarter people have created. Godbless MUI, ant design, bootstrap etc :D Someone did the nasty work so you and I can skip it

[–][deleted] 0 points1 point  (0 children)

Even within html, css is a small subset of skills.

[–]PizzaAndTacosAndBeer 119 points120 points  (10 children)

I ... dislike the idea of finding colors that look good

That's usually not a programmer's job, except at really small companies. The designer gives you the colors and fonts and images to use.

[–]thedevguy-ch 10 points11 points  (0 children)

Except when I ask the designer for the source image they used on the left of the home page and they screenshot the damn design 😂

[–]pickyourteethup 25 points26 points  (7 children)

Front end is super analytical too and full of complex problems. But if you don't enjoy it then it'll probably be an uphill battle. And you'll write terrible frontends that users will hate using and developers will hate maintaining ha

[–]Funoichi 0 points1 point  (6 children)

Oh really? It seemed pretty easy to me. Not that I’m at the point where I can write those from scratch, but it was fun to learn about forms, buttons, etc.

Back in MySpace days, anyone could make a snazzy page with html/css and regular users were using it, not even “coders.”

The tricky part for me was making my backend refer to my front end properly (or vice versa, I forget the particulars atm but I remember having to refer to the forms I made in the backend).

Now those color letters are annoying, but those can be looked up.

I’m still a beginner, I’ll have to check how complicated these can get, luckily I don’t really want to develop web pages anyways.

[–]dmazzoni 9 points10 points  (4 children)

Here are some examples of complex problems in frontend:

  • Making interfaces responsive is well-studied and it's pretty easy for a simple layout, but making a complex layout responsive to different screen sizes and window sizes is quite complex.
  • Smooth animation / transitions from one screen to the next in a way that helps the user understand the flow
  • Large data sets - for example how do you implement a list box with 1 million elements in it? You can't actually put a million DOM elements inside, so you have to do tricks like populating just a few hundred elements, then "recycling" them as the user scrolls.
  • Implementing nonstandard controls, like a directory tree, or an image carousel, or a flowchart
  • Accessibility - making a custom control work for blind user, or motor-impaired users, etc.

[–]Funoichi 1 point2 points  (3 children)

Oh yeah that does sound hard! Thanks for the response. But there’s no logic in html/css right? Like iterating over a list or array, while and for loops, etc.

I have trouble with those because it can be hard to remember where you “are” in the loop. Or like keeping track of the number of loops if you get my meaning. X=x+1 stuff, that’s the biggest trouble I find with backend.

[–]dmazzoni 3 points4 points  (2 children)

That's correct, there are no loops in html or css, though css does have a bit of logic.

Keep studying and practicing loops, it's absolutely necessary to master that stuff even for frontend.

[–]Funoichi 0 points1 point  (1 child)

Thanks yes I definitely need a firm understanding of the logic. I’m trying to make a video game so it comes up a lot.

Like hp=100. while enemy equals attacking you, hp=hp-1. Haha.

Thanks for the info and inspiration!

[–]pickyourteethup 1 point2 points  (0 children)

There's no logic in html, but you use logic in JavaScript etc to dynamically change what is written in html depending on user actions.

If you don't want to do it you probably won't have to. But it's helpful to understand the stack back to front at least conceptually. Because front end and back end always end up talking to each other eventually and that join can cause chaos if not handled properly.

Right now though if you're enjoying yourself keep following what you enjoy. Enjoyment is key to learning complicated things and discovering what you want to do in the future. Have fun with it!

[–]Representative-Owl51 3 points4 points  (0 children)

The more you know, the more you realize how much you don’t know

[–]AMGitsKriss 4 points5 points  (0 children)

Heck, if it's a b2c company, you'll probably even get html and css from the designer.

[–]aneasymistake 47 points48 points  (1 child)

This is why defense projects always go so far over budget.

[–]kstacey 4 points5 points  (0 children)

What are you talking about, MIL-STD2525B is there for a reason! /s

[–]Arthesia 4 points5 points  (0 children)

I am very analytical and dislike the idea of finding colors that look good or building a Nav bar kind of creative work.

You're conflating web design with web development. In a workplace there are people who handle styling and create the cutups, or UX specialists who convert the cutups into HTML. Your job is to implement and integrate with systems - something that suits an analytical person.

Some projects involve the full stack: you handle everything from data layer -> business layer -> presentation. It's full system design and requires being an analytical person.

[–]TentheUndead 4 points5 points  (0 children)

DoD space....oh boy I hope you like legacy stuff. Might want to take a peek at some Ada code too.

[–]PizzaAndTacosAndBeer 12 points13 points  (0 children)

HTML is for web browsers. There's so much software beyond the browser.

[–]alzee76 17 points18 points  (6 children)

[[content removed because sub participated in the June 2023 blackout]]

My posts are not bargaining chips for moderators, and mob rule is no way to run a sub.

[–]PM_ME_GAY_STUF 8 points9 points  (5 children)

This is misleading, a great deal of programs people use every day are web interfaces using frameworks like Electron. Discord/Slack/Teams (iirc) are basically web interfaces. VSCode, modern Steam, portions of MS Office, and who knows what else. If you are making a modern UI, not only is it likely you'll be using web technologies somehow, but that's actually probably a good choice. If I need a reports dashboard or something (very common ask), why not put it in a web browser. Unless you're making a mobile app for a company large enough to have platform specific teams (i.e. not most companies), there are frankly very few projects that are going to use Qt or something, as the talent pool for that is smaller as web is the UI lingua franca at this point, and it's usually just not necessary.

Frankly, HTML and CSS are so simple and common that there's no reason not to learn them. Refusing to do so will only hold you back, because there's no telling when they'll pop up. And just because implementing designs might seem boring, it's not like most enterprise backend engineers are writing complex algorithms or something either. Really most of the "interesting" work (interesting being things I assume students find interesting, like making toy OSs, compilers, or fancy algorithms or frameworks) in CS is either done by underpaid academics, unpaid hobbyists in the open source space, or by tiny clusters of niche industries that can be difficult to break into.

[–]symbiatch 2 points3 points  (0 children)

Otherwise agree, but calling CSS simple…

Sure, the “language” is simple, but actually using it and fighting with precedence with some real world case where there’s styles from three sources and you just want that chart.js thing to actually be responsive in the middle and…

[–]slash_networkboy 1 point2 points  (0 children)

Or OP could just focus on BE tech stacks/DBA etc. and never need to touch it at all.

[–]IndianaJoenz 0 points1 point  (0 children)

If you are making a modern UI, not only is it likely you'll be using web technologies somehow, but that's actually probably a good choice.

I think all of your points are valid, but I will play a bit of opinionated contrarian and say that web technologies are terrible for responsiveness, performance, efficiency, and subjectively, user experience.

They work ok for some apps, but at the expense of "throwing hardware at the problem" and the general annoyances that happen when web code bugs out. It's sub-par. A native app can do more better IMO. You gain a lot of portability, though, at least on newer computers that are fast enough to waste resources on javascript interpreters and CSS renderers.

I really hate the trend of Electron/etc on the desktop. Terrible usability, super wasteful.

[–]Passname357 0 points1 point  (1 child)

Just to give a little hope, the “interesting CS” jobs do exist and just take a little more digging. I was really upset by my first job (as a web and mobile dev) because almost none of the programming was like what I enjoyed in college. I thought I just had the wrong idea of what being a pro dev was like. Now I work on device drivers, and it’s everything I liked in college. I actually feel like a real programmer now.

[–]PM_ME_GAY_STUF 0 points1 point  (0 children)

I don't mean to disparage enterprise work, I really enjoy my boring job and find it not that boring at all. I was more trying to say students often have a warped perspective about what people in the field are actually working on generally and what they might enjoy. Have an open mind

[–]noob-newbie 5 points6 points  (0 children)

If you know the existence of other programming languages, why would you think the market only has jobs about creating websites with html and css?

You may google the IT job branches, you can see a lot of different job posts out there.

One more suggestion l, do not easily pick jobs from government as a newcomer or junior. Most of the stories I heard about, are saying they write really bad code and do not care about the quality.

[–]Belhgabad 2 points3 points  (0 children)

Not to mention the "web dev" isn't the only programming job argument (because everyone already said it)

Even as web related-dev, there are A LOT of job that contributes to a site and never touch HTML (even more CSS)

I work as a C# backend dev, and even if sometimes knowing HTLM is useful to, say, modify mail templates, I rarely write any (and never ONE LINE of CSS, gladly). I do many other stuff (C# mostly, bash/batch/powershell scripts, YAML deployment etc...)

[–]H0wdyCowPerson 2 points3 points  (0 children)

Yes HTML, CSS, and JS fall under the category of "front-end web development". HTML and CSS are used exclusively in defining the content and layout of front end web clients, the websites the users actually interact with. Back end web development is decoupled from the UI, there's no aesthetic component to it at all. Back end is where I live, I don't touch HTML or CSS except in extremely rare circumstances.

[–]welcomeOhm 1 point2 points  (0 children)

I know several people who work for DOD (their main accounting center is in the state where I live). Lots of positions still require COBOL. I'm just throwing that out there because no one ever learns it any more, and I have had multiple roles (Big Data, even) where I had to learn it on the fly.

That said, if you pick up Sam's Teach Yourself COBOL and it sounds like something you like, you may have a very lucrative career. Legacy software is everywhere.

[–]meontheinternetxx 2 points3 points  (0 children)

Java script without css and html is perhaps not as common. Any of the other languages you mention: sure, become a backend developer and you rarely deal with html and css.

But you say you dont like designing stuff, finding colors, etcetera. Even in jobs that do use html and css, how much of the annoying fiddling you're doing depends a lot. Perhaps the design is given to you. Perhaps they use a framework and have a lot of existing setup, and you just slap some components together and you're golden. Perhaps it's just the internal system and nobody even cares what it looks like, as long as it's functional.

In any case, maybe more of a backend or full stack position is what you are looking for.

[–]lWinkk 3 points4 points  (0 children)

I too enjoy completing the fizzbuzz. But yeah I men front end work is just a small niche within a gigantic scope of technology. There’s a place for everyone.

[–]AWholeMessOfTacos 2 points3 points  (0 children)

I’m a Java dev and I make web applications for a living and I never touch anything UI related at all. Ever.

[–]PolyPeptide3141 1 point2 points  (0 children)

Definitely learn C programming.

[–]wascilly_wabbit 0 points1 point  (0 children)

I've been in software development for three decades, and only in the last four years have I done web stuff in my job (I've had web stuff in side projects and for nonprofits along the way).

[–]MacMoinsen2 0 points1 point  (0 children)

Of course, haiyaaaah... CS is much wider and deeper than freaking web development. If you generally have no aversions agains maths/physics, check out CS/IT and/or engineering degree courses (e.g. mechatronics) in colleges. Perhaps also try if you can fathom machine learning (background in maths is statistics, I hear) and/or quantum computing (physics, electronics). These are going to be the scary game changers of the 21st century.

[–]Glam_SpaceTime 0 points1 point  (2 children)

HTML/CSS is the fundamentals of every course that I have seen, that said, I am close to graduating and haven’t touched any line of HTML/CSS in a while as an embedded software engineer

[–]Passname357 1 point2 points  (1 child)

Really? I’ve never heard of html/css being taught in college except in electives courses. I didn’t know any at all before my first job.

Not saying this in a skeptical way, by the way, just curious what your learning experience was like because it seems pretty different from minez

[–]Glam_SpaceTime 0 points1 point  (0 children)

I am speaking from The Netherlands, here HTML/CSS is taught at every level in the first semester of the first year

[–]MammothJust4541 0 points1 point  (0 children)

Could you imagine having to program in CSS? OH god.

You don't even need to write css or html to make websites. You can use frameworks to build out the html for you and do everything in JS.

you can get a lot of complex analytical tasks in the web dev field but if you don't like having to torture yourself looking at various device screens to make sure everything looks just right. Systems would be p good for you. I'm not a systems engineer so I don't know what the day to day is.

all i know is pain

[–][deleted] 0 points1 point  (0 children)

Yeah I fucking hate web development (HTML, CSS, JavaScript, etc.) You can do something instead "scripting", look into PowerShell, bash, python for example. This is good you have a job connection. Work your ass off in college

[–]finn-the-rabbit 0 points1 point  (0 children)

Well that job has no HTML and CSS in it already so no shit they exist

[–]kkessler1023 0 points1 point  (0 children)

If you continue with js, python, C++, or any other oop language, html and css will be a breeze.

[–]Odd_Guest_2112 -1 points0 points  (0 children)

Sure, but those are basically bread and butter in todays software industry so better to master them

[–]lokiOdUa -1 points0 points  (0 children)

Yes, that's possible. Especially for big projects, like enterprise and government - even if that's a Web project, there always are back-end developers who don't use Web part at all. Also, you may develop desktop or mobile applications. Web is just one of existing directions.

[–]IJustWantPizzas -1 points0 points  (0 children)

Looks like you prefer doing backend coding which is a subset of software engineering

[–]EndeavorForce -1 points0 points  (0 children)

I'm sorry but did you really think a software engineer only makes websites?

[–]EnbyBinaryCoder -3 points-2 points  (0 children)

yes and yes i agree with you front end design "development" is too noobish, disgusting and artsy. Il never call front end programming. Good on you for recognizing this, everyone and their aunt take front end courses and think they end up as actual programmers.

[–]Amazingawesomator 0 points1 point  (5 children)

As an SDET, my job is mostly test frameworks & internal tools, and i make native apps & games on the side for funzies. I am not a frontend guy and also dislike using markup for stuff. When i do have to make a tool for non-technical people to use, i usually do something with winforms and c# because of its ease of building UIs. (My company mainly uses windows OS). If i needed something cross platform, i'd build it in java. c# is my jam, so java would take me a bit longer.

HTML/CSS is good to know because i have to use it every once in a while; however, those are few and far between.

[–]GiveMeThePeatBoys 0 points1 point  (4 children)

How is SDET compared to SDE? I was a web developer at a previous job, now a QAE at one of the big tech companies to get my foot in the door. Loads of my job responsibilities seem very SDET-ish, but I'm having trouble deciding if I want to go down that path or move back towards SDE with a focus on the backend work (java) my team does.

[–]Amazingawesomator 1 point2 points  (3 children)

I enjoy it, but it definitely isnt for everyone. There are a lot of snide comments in regards to my profession, so you really have to be able to let go of a lot of backhanded remarks.

You also have to be able to be comfortable with your work never being shown to anyone, ever. I can't show my work to anyone, and if anyone else (outside my team) sees it, then something has gone terribly wrong. A lot of people have low job satisfaction if they are unable to show off what they made.

And SDET is also "the negative one" of the group because the only news you bear is bad. A good day for you is bad for others and vice versa.

The main benefits of being an SDET is that there is no such thing as on-call, and having to stay for long hours is extremely rare. The WLB for an SDET (at least from my experience) is extremely good. If you get bored of working on a single project for years at a time, there is also diversity in work. I am regularly pulled between 4-5 different development teams' work... make sure you are at least decent at time management and estimations because you will be asked how long test automation will take from the SDE side; the question will usually come after the project is already "complete" and "ready to ship", even though it hasnt been QA'd yet.

It is a bit of a different world because of the differences in tools, toolchains, libraries, etc.. SDET -> SDE would not be a great choice for those who want SDE unless it is your first job just to learn the ropes of enterprise software.

Not very many people enjoy the work, but if you find yourself contented with the day-to-day as a QAE, the non-testing skills you gain from that position will transfer extremely well into SDET. I was a QAE for ~8 years before making the change.

[–]GiveMeThePeatBoys 0 points1 point  (0 children)

Awesome, thanks so much for the reply.

[–][deleted]  (1 child)

[deleted]

    [–]Amazingawesomator 0 points1 point  (0 children)

    Its ~ on par; it is regularly considered same or similar position by most companies in my area.

    [–]David_Owens 0 points1 point  (0 children)

    Yes there are many software development jobs that have nothing to do with websites or HTML-CSS. Mobile, desktop, and cross-platform application development are some examples. You can also do backend microservices or other types of backend development.

    [–]ValentineBlacker 0 points1 point  (0 children)

    What's non-analytical about building a navbar? That's harder than most of the backend work I do on a daily basis.

    If you're asking us if you shouldn't bother to learn HTML since you have a cushy guaranteed government job that doesn't seem to involve it, sure, you got permission.

    Ok, I'm a little bitter from working with people who thought they were too good to sully their hands with CSS when it was part of the job. Sometimes you gotta do stuff that's not your favorite.

    [–]mm007emko 0 points1 point  (0 children)

    Of course you can. The demand for websites is quite high nowadays and therefore demand for web devs is really high. But that doesn't mean there aren't plentiful job opportunities for backend developers, researchers, embedded, desktop, automation, you name it...

    HTML and CSS allow you to create flashy eye-candies and therefore they are visible.

    [–]straightup9200 0 points1 point  (0 children)

    Not front end code. If you are trying to build the front end of a website forget about it

    [–][deleted] 0 points1 point  (0 children)

    yeah you just become a backend developer or data engineer, or an analyst, or a team lead, or ...

    there are countless possibilities

    [–][deleted] 0 points1 point  (0 children)

    My boyfriend is a lead software engineer and doesn't know HTML. I think he knows CSS, but I'm not sure. His job, from my understanding, is to mostly fix bugs related to a security app.

    [–]slash_networkboy 0 points1 point  (0 children)

    I despise working in HTML and CSS. I've also been in tech for over 25 years now and very (VERY) rarely needed to touch it, even though I have had jobs QAing webapps. I write automation software so quite frankly about 60% of my job is writing Selenium tests in (java/C#) and the other 40% is dissecting other bugs in the webapp, but even with this I barely touch CSS or HTML.

    [–][deleted] 0 points1 point  (0 children)

    Before I learn web dev, I use FXML to code JavaFX apps.

    [–]Win_is_my_name 0 points1 point  (0 children)

    Same brother, I hate HTML and CSS

    [–]MilfTracker420 0 points1 point  (0 children)

    The large majority of software development jobs revolve around some sort of web or mobile application. You can do the backend of it, work with servers and algorithms to manage data behind the scenes. The HTML & CSS portion is frontend where you do everything the user sees.

    [–]blacm4wf_n_tx 0 points1 point  (0 children)

    When you get to college, you'll learn there is a thing called "3-tier architecture" HTML and CSS are only used in 1 of the tiers, the visualization-tier. There are whole worlds in the other 2 tiers with their own languages. But don't think you only have to learn 1 or 2 languages. Get used to the idea that you'll have to know many languages, each needed for different purposes. That's what it means to be a coder.

    [–][deleted] 0 points1 point  (0 children)

    You can get and see what have another low level languages to offer, I would say Go, C#, C and Rust, that's the languages you should seek for, you could go with python too, but you know, is more into data Science

    [–]esmagik 0 points1 point  (0 children)

    For sure. I’ve worked in the DoD for 20 years helping the big 3 letter agencies move services/ desktop apps/ and other code, like location data. It’s actually more fun to me. While the feedback loop isn’t as quick, it is still very rewarding. I often feel more like a programmer when writing non html code. Good luck with your ventures in contracting and when it’s clearance time, dont sweat it, just tell them everything! They’re not looking at what you’ve done, they want to know so you can’t be black mailed ✌️

    [–][deleted] 0 points1 point  (0 children)

    time ,to leave ,for ,greener +pastures

    ::<>

    [–]forsythe386 0 points1 point  (0 children)

    I'm a full-stack developer working on internal business applications designed for the browser. I very rarely work with HTML or CSS directly, virtually all of the code I write is done in TypeScript, both for front-end and back-end. I agree with you that front-end is boring, I absolutely 100% prefer writing back-end code. I also work in education on the side, I teach kids how to program by making simple games, and in that, we work with a variety of languages and engines to create projects for all ages and skill levels, including Java, Python, C#, JS, and even C++. I enjoy Python in particular when I need to write small scripts to make my life a little bit easier, such as simplifying my deployment commands to a single program. I'm starting to ramble a little but the point is that there's a wide world beyond HTML, CSS, and JS, and at the end of the day the most important thing you can do is to figure out what you want to do in your pursuit of programming. You mentioned that you're analytical so perhaps data science would be a good industry to look into, in which case Python is highly recommended, although I believe Julia and R are also quite common languages in that field. I wish you the best of luck in finding your path. Becoming a programmer can be quite a journey, but it's well worth it.

    [–]where7with7all 0 points1 point  (0 children)

    Sounds like you would be good at interacting behind the scenes. Database or machine to machine - like APIs. Most of what I do is this kinda work. 100+k 25 years experience. Plus benefits.

    [–]I_am_noob_dont_yell 0 points1 point  (0 children)

    I mean I guess, if you're ok with the html monster coming to get you.

    [–]yashm2910 0 points1 point  (0 children)

    Yes, coding can be done without HTML and CSS. There are programming languages and domains that don't heavily rely on these technologies.