[–] aGameCalledCountries 0 points 3 points (+3|-0) ago 

I program malware. You are wrong.

[–] Wargasm 0 points 0 points (+0|-0) ago 

Do you work in eastern europe?

There's a boom over there; they have call centers and customer support.

[–] MrKequc 0 points 0 points (+0|-0) ago 

That's not the worst of it, I hear some of the hackers bought facebook ads swung an entire american election.

[–] Morbo 0 points 2 points (+2|-0) ago 

Early on in my programming career I used to code around the user by trying to think of every scenario they could throw at my software and make sure I never let them mess up. It was a time consuming process but the users were happy because they could get around just fine and most any error possible was handled. Now that I am long in the tooth I write programs that steer my users so they can't get into trouble in the first place. The software flows much better and I don't have to think about what kind of trouble they can get into because I make sure they can only do what is proper. This has made me a very efficient project completer and my users don't complain about my software getting in their way. Instead they ask for more features since I made their job easier and they get more out of the software so they integrate it into their work more. It's a far cry from the mess these young and still wet behind the ears programmers produce with their buggy and convoluted frameworks and tool chains. I keep it simple, keep it real and school those young dipshits left and right because they get caught in implementation rather than making a good system. Mature programmers who took their licks and learned make great mentors but these kids think they know everything because they are up on all the latest fads in coding. They don't realize the art and science of writing software hasn't changed one bit at the fundamental level and frameworks only serve to "dumb-it-down" so their meager skills can keep up with programmers who actually know what's up. I love it when they finally get that "a-ha" moment and understand that you don't need a full framework to do something when five lines of simple code gives you the equivalent result with no overhead. If only more programmers could learn from the old grey beards and understand that we aren't getting better by building on more layers of crap. The old ways are still very much relevant and they will continue to be. Users are not the enemy. Frameworks and trendy fads are the enemy.

[–] roznak [S] 0 points 2 points (+2|-0) ago 

Now that I am long in the tooth I write programs that steer my users so they can't get into trouble in the first place.

Exactly!

Users are not the enemy. Frameworks and trendy fads are the enemy.

Frameworks never solves problems they causes problems in the long run.

[–] notenoughstuff 0 points 1 points (+1|-0) ago 

Out of curiosity: Which kind of applications and software do you work with? Front-end? Desktop applications? Mobile? Fullstack? It does not sound like embedded or back-end, though I could be wrong.

[–] Morbo 0 points 1 points (+1|-0) ago 

I mostly work on web and desktop with some mobile here and there. I'm also full stack end-to-end because my group doesn't really split up into distinct areas of work so we all do whatever is necessary on every part of the technology stack. I have an embedded development background but that was a long time ago on CPUs like the Z80 and MC6800 and I haven't touched that in about 2 decades.

[–] RevanProdigalKnight 0 points 1 points (+1|-0) ago  (edited ago)

Just the a few days ago one of my coworkers asked me to consider refactoring the following JavaScript code:

const pad = n => n < 10 ? `0${n}` : n;

const formatDate = date => `${date.getUTCFullYear()}-${pad(date.getUTCMonth() + 1)}-${pad(date.getUTCDate())} ${pad(date.getUTCHours())}:${pad(date.getUTCMinutes())}:${pad(date.getUTCSeconds())}`

It takes a date and formats it into UTC YYYY-MM-DD HH:mm:ss using two single-line functions. Simple, right?

His rationale was (paraphrased):

This doesn't look like it would be easy to maintain moving forwards. You should consider using Moment.js to format this instead.

My first reaction was "How is this not easy to maintain?", followed shortly by "Why add all of Moment.js for one date formatting operation?" and finally "No, this is a stupid suggestion."

Then I looked up the documentation on the particular Moment.js function he suggested that I use instead and so far as I can tell it doesn't let you customize the date format that it uses, so it wouldn't fit the need anyways.

[–] roznak [S] 0 points 0 points (+0|-0) ago  (edited ago)

Under deadlines, stress this wall of text in the one-line could contain a bug and it will take hours to find the bug that you could have used for productivity.

const pad = n => n < 10 ? `0${n}` : n;

const formatDate = date => `${date.getUTCFullYear()}-${pad(date.getUTCMonth() + 1)}-${pad(date.getUTCDate())} ${pad(date.getUTCHours())}:${pad(date.getUTCMinutes())}:${pad(date.getUTCMilliSeconds())}`

Now spot the bug in this above example.

[–] Morbo 0 points 0 points (+0|-0) ago 

I see no problem with the two lines of code here. They are efficient and get the job done. Aside from long line length there is nothing problematic about it. Moment.js would be a waste for such a small task and it sounds like it's not even up to the task anyway. He's an idiot.

[–] coopzy 0 points 0 points (+0|-0) ago 

[–] TeranNotTerran 0 points 0 points (+0|-0) ago 

I pretty rarely use any kind of a framework. If I do, it's very, very thin and serves a very specific purpose to avoid duplicate code.

I do see some terrible code from younger people, but also terrible code from grey beards who use short hand for variable names, don't have unit tests, and refuse to use libraries so they are reinventing the wheel over and over. They both mess up but usually in different ways.

[–] Niggertown 1 points 2 points (+3|-1) ago 

Then youll just attract retard users.

[–] Adminstrater 0 points 1 points (+1|-0) ago 

Soon, you'll learn all users are retards, and not necessarily on purpose.

[–] Wargasm 0 points 2 points (+2|-0) ago 

WHY WOULD YOUR PARENTS NAME YOU $OFFSET$PAYLOAD?

I DON'T UNDERSTAND!

[–] MrKequc 0 points 1 points (+1|-0) ago  (edited ago)

Bloat is a big problem and there are way too many frameworks and tools at everyone's disposal many of which are horrible. But that isn't the biggest problem facing the tech community. It's the people.

Jesus Christ what does it take to find a developer who doesn't suck shit at their job. Just because a tool is available doesn't mean it needs to get hammered into the project. Learn how to write something that can be read. Managers exacerbate the issue in many ways, chiefly by not seeming to understand the different between a good developer and a bad one. Diversity hires and social justice are out of control, SCRUM practices are bringing capable developers to their knees.

Often in the end they just get Indians to do it.

One good developer can do a better job in less time than 20 bad ones!

[–] patriot_biz 1 points 1 points (+2|-1) ago 

Naw, good software is difficult to make, it should be difficult to use.

[–] J_Darnley 0 points 1 points (+1|-0) ago 

Tangentially related...

I do get paid to program but I don't get paid to deal with users too stupid to read whatever error message I give them. It tells you why it failed. You asked for impossible constraints. This is why I stopped volunteering my time to help users on some projects. They don't read.

Maybe you don't understand what it means because you lack knowledge in this domain. Okay but tell me what it says. Do not say "it doesn't work". "it doesn't work" is not an error message.

I hate users. Unless you're paying me I'm only writing software for myself.

[–] Vhaine 0 points 0 points (+0|-0) ago 

A dollar for every time some asshole called and said 'it's broke' and acted like I was a dick for asking them to read what was on the screen...

[–] roznak [S] 1 points -1 points (+0|-1) ago 

I do get paid to program but I don't get paid to deal with users too stupid to read whatever error message I give them.

Unlike you, I actually make my program work and not cause errors.

[–] lesshateplz 0 points 1 points (+1|-0) ago  (edited ago)

Yep, The undocumented/buggy framework usually is what ruins the project. The reason for this is a project is started by someone who only knows a framework but fails at the implementation of the code.

[–] WhiteMakesRight 0 points 0 points (+0|-0) ago  (edited ago)

Your job is whatever your job is. Software and CPUs are just tools. Don't get too impressed with yourself, just because you're slightly wiser than the average, 15 year old Node.js developer.

[–] roznak [S] 0 points 0 points (+0|-0) ago 

Bad developers sees the Software and CPU as just tools, the user is stupid. You get in a none-stop fight with your users that refuses to do it correctly.

Good developers uses these tools to elevate the code so that the users actually wants to use it. No actual interaction with your users is needed because it works intuitively.

Who do you think is the most productive developer? The one that keeps on fixing users issues or the one that gets uninterrupted development time to create even better code?

[–] WhiteMakesRight 0 points 0 points (+0|-0) ago  (edited ago)

Bad developers sees the Software and CPU as just tools, the user is stupid. You get in a none-stop fight with your users that refuses to do it correctly.

See, there's your mistake. You see incompetence all around you and think that being above the average level of incompetence somehow makes you a god among men. 90% of every industry is incompetent fucks and rank amateurs, at least. Don't become too into yourself just because you're not. John Carmack didn't make yet another, slightly better than average 2D side-scroller and call it a day. Your 1 dimensional thinking has all the signs of a naive, young programmer thinking he's hot shit.

load more comments ▼ (2 remaining)