I sometimes wish my employer didn’t know that I can write Python code, so that I would never be assigned front-end work. I prefer to deal with programs that take lists of numbers and return lists of other numbers.
(I’m not as bad as one guy I used to work with, because at least I accept ASCII input. His backend code only took binary-encoded configuration files for no reason I can think of except maybe to punish anyone except himself who tried to use it.)
You could do templating with jinja, or do some data visualization with bokeh. I think there’s also something called dash. I don’t know much about any of them though.
I mean, python has pickle and people use that to store config. It’s a weird practice, and totally unsafe, but it works well enough. This wouldn’t be that different.
Not understanding SQL (and in some cases NoSQL DBs) and the underlying database are a reason that so many full stack devs suck. Just because they use an ORM, they think the database work is magically solved, until they realize it’s just doing what they’re telling it to do and their lack of DB understanding has created an awful database structure. And then a DBA comes in, and then the entire ORM layer has to be scrapped because it’s trash, so on and so forth. A full stack engineer doesn’t have to be a DBA, but they sure as hell need to know what the ORM is doing to their data they are CRUDing
Frontend dev here, can confirm. Last week I had to look at some Java code and was instantly greeted by some AbstractFactoryBuilderImpl. Nightmare fuel if you ask me.
It may suggest the company doesn’t want to hire the appropriate amount of engineers, with the appropriate expertise, and instead want a mule. It also may suggest that product quality is a low priority.
I love shitting on Fullstack devs as much as the next guy. However, sometimes it really just does make sense for an (often internal) product maintained by a one-person team, and it doesn’t have to mean that the organization doesn’t value them. I’ve seen it happen.
However I would not recommend it as a career path because it’s essentially impossible to tell what you’re getting into when you get hired. Could be what I just described, could be that you inherit the full responsibility for a 20 year-old perl+php5+xhtml+angularJS mess.
I think it can only truly make sense if you work independently and get to build projects to your own quality standards, assuming you manage to find a “scope is small enough that specialization doesn’t make sense” niche. This is very hard which is why in practice “full stack” tends to mean “master of none but good enough to get a product out the door cheaply”.
In the soap opera General Hospital, Colonel Sanders of KFC makes a guest appearance because someone is trying to kill him to obtain the secret recipe of 11 herbs and spices. He knows Malbolge and is able to disarm the destruct sequence.
Backend Requirements: “When x,y goes in, I want x+y to come out!” - Okay
Frontend Requirements: “Well it needs to be more user-friendly, and have this rockstar wow effect” - Yea wtf are you even talking about? You want me to add random glitter explosions, because I found a script for that, that’s pretty ‘wow effect’ right?
Isn’t our main audience German? If you wanted non German stuff you shoulda asked for regional translations. Not only is that a change request, but you’re gonna be pushing the release window by months.
I spent years as a mobile developer and the thing that always drove me the most nuts was being handed a software design with lots of tiny buttons that were nearly impossible to tap with a finger. I generally implemented the UI by increasing the size of the tappable regions (without increasing the apparent size of the buttons) making it actually usable, but one time the designer discovered that I was doing this and went apeshit and convinced the project manager to order me to undo all this and make the tappable regions the same size as the buttons. The grounds for this was that implementing the larger tappable regions would take too much extra time - despite the fact that this had already been done and it took additional time to undo it.
I usually just do what they requested and when they come to complain I just tell them “well, you’re the one who requested this” and pull up receipts. My DM to myself on Slack is filled with screenshots and links to confirmations for bullshit requests that the product team made.
Real back-end requirements: when x, y goes in (in JSON-as-an-XML-CDATA-block because historical reasons), I want you to output x+y+z+æ+the proof to P=NP.
æ will require you yo compile x+y in CSV, email it to Jenny, who will email back the answer. She doesn’t quite know how to export excel sheets though so you’d better build a robust validator. No, we don’t know what æ is supposed to look like, Rob from Frontend knows but he’s on vacation for the next 8 months.
The request must be processed under 100 ms as the frontend team won’t be able to prioritize asynchronous loading for another 10 sprints and we don’t want the webpage to freeze.
And why does your API return a 400 when I send a picture of my feet? Please fix urgently, these errors are polluting my monitoring dashboard and we have KPIs on monitoring alerts.
Yea, fair enough. My point was mostly: backend requirements are usually at least objective. “Json xml comes in”, “CSV goes out by email”, “The request must be processed under 100 ms”, “API should not return 400 on feetpics” - these are still mostly objective requirements.
Frontend requirements can be very subjective “The user should have a great user experience with the frontend”
Hahaha that’s what frontend devs think, but the backend requirements are just as vague: “Just make this button work”. In my example all the requirements would actually be figured out bit by bit over months, nevermind the prescience required to foresee future architecture-breaking features or scaling requirements. At least you can make a mockup and get instant feedback, flawed as it is.
On either side it takes experienced engineers to suss out actual requirements from customers/PMs. The main difference is that the backend (especially on the infra/devops side) is only accountable to itself if everything goes well, but ironically that means no-one knows or cares about the amount of engineering that goes into keeping PMs blissfully ignorant of the risks and complexity.
Hahah, well as a primarily backend developer, that’s what I think as well.
“Just make this button work”
If that button doesn’t work, that sounds like a frontend problem to me… ;)
But yea, as you mentioned, it probably comes down to experience. As the meme from this post depicts. When I dabble in frontend and make a WinForm for my devtool, people just look at me and are like “Uhhh, can you make it better?”
No sir, clearly I can not. And I have no idea what you mean with “better”.
Yeah if you have shitty UX people frontend will just built what they’re told. Or actually more often, you could have really talented UX people and management decisions are like “needs more buy now buttons, the 3 visible on the screen aren’t enough.” Shit flows downhill
Man, if only backend demands were algebraically tractable. Often they’re related to frontend demands that may or may not make backend sense, since the frontend is all users see.
I understand this, but I didn’t know how one would count up to 36 the first time around. PhlubbaDubba is using joints in their fingers to get additional objects to increment on. If we only used our fingers, we could only get to 10
In all seriousness, I use it when I need to time something - 32 on one hand means one minute (approximately) with two rotations. I started when trying to determine if my daughter was asleep, waiting for a minute after she’d last moved or talked, and I didn’t want a screen or light or noise to wake her (she’s always been hard to get to sleep).
So - yeah it’s a tiny bit tricky to do some combos, but no more than touch typing.
Using your thumbs as pointers, count the joints in your fingers on one hand, that gets you to 12, use the other hand’s finger joints to count the thirds within 36, with 4 fingers on the other hand, that’s “40”
So is there a 9th circle? Would that be a programming language where the only way to compile would be to speak op-codes out loud in the correct sequence & cadence into a microphone?
General ban by an admin being an asshat. Haven’t bothered asking nicely to get reinstated.
Lemmy desperately needs some default notification, because what newbie is checking a site’s modlog with any regularity? I didn’t even know it existed. I was bickering with some troll who said ‘you’re cruising for a report, mister!’ despite being far further over-the-line than me, and I said, that’s adorable, knock yourself out. And then things so thoroughly stopped working that I assumed my LW account had been straight-up deleted.
Meanwhile, that troll suffered no consequences whatsoever. Despite starting shit, getting personal, and being wrong. My accordingly low opinion of moderation across Lemmy has since been vindicated more often than not. This was the largest instance that didn’t demand “civility” as a constant choke-collar, and the worst problems I’ve had have still been mods flying off the handle in cases where I’ve been perfectly polite.
Apparently I can’t say please and thank you without people taking it as vicious sarcasm, so I don’t fuckin’ try and I don’t fuckin’ worry about it. It’s been freeing.
programmer_humor
Oldest
This magazine is from a federated server and may be incomplete. Browse more on the original instance.