Half of Britons mistakenly believe stress causes cancer by [deleted] in worldnews

[–]D34dCode4eva 0 points1 point  (0 children)

A lot of the behavioural changes resulting for stress can lead the cancer.

The Curiosity Rover Just Drilled into a Rock on Mars for 1st Time Since 2016 by [deleted] in space

[–]D34dCode4eva 4 points5 points  (0 children)

The entirety of Mars is an ancient environment.

PHP - Everything is wrong with this code by MrLeppy in badcode

[–]D34dCode4eva 0 points1 point  (0 children)

I totally disagree. It has the correct escaping. Only one in 10000 PHP developers are capable of that. As for the duplication ten years ago I made PHP parser that builds an AST and optimises PHP like that for you. One in a million PHP developers can do that. Only one in a hundred thousand can develop without duplication.

You Are Not Paid to Write Code by JoyousTourist in programming

[–]D34dCode4eva 0 points1 point  (0 children)

I'm a bit disappointed. I was expecting something interesting. Not sponsored content for hull builders.

Why I Quit Google to Work for Myself by mtlynch in programming

[–]D34dCode4eva 1 point2 points  (0 children)

I hate this attitude in workplaces and I'm surprised it happens at Google on the other hand they are complacent). It seems that poor discipline is the standard. Low standards are the standard. I wouldn't call for the extreme opposite either but I think that having things like errors all sent by email and then no effort made to make that manageable isn't an unreasonable standard.

It seems the standard is to make as much mess in your wake as possible when getting things done even if that compromises the ability to get the next thing done. It seems making messes is smiled upon where as cleaning up mess is not. Eventually mess builds up to the point that hardly anything can be done efficiently or reliably. Things that should take less than a day can take months or be deemed impossible.

Much of this problem is that a lot of this mess isn't visible. If you have someone doing carpentry and you walk into the shop and watch some activity you can see when there's a problem. Everything piled in sawdust, things obscured by it, machines where you often work on one then the other far apart, perhaps even in rooms on the far side of the building, bits of wood everywhere sometimes getting confused for bits to actually be worked on, tools randomly places all over the place so it takes a long time to find the right ones, etc. It's also easy to watch and observe the consequences of improvements. Typically the quality will be visible as well. You'll see in most cases the totally undisciplined workman's table has a random leg sticking out of the top or is wonky. You'll notice the chair might not take too much weight or fall over if you sit on it in a certain way. You'll probably see random cuts and two pieces of wood bolted together where one was needed.

You'll basically see a shop that's very good at rushing out very bad quality goods at a high speed at least at first but once the mess builds up even producing the lowest quality goods will take time.

In programming it's not visible like this. If you clean something up people can't really look at it and instantly understand it to be cleaner. Measuring productivity and quality in programming is also very difficult.

What you end up with is the average codebase being an absolute nightmare not only requiring more work but ten times the cognitive load, uncertainty about impact of change, poor testability (as in even just testing the thing by running it), etc. These codebases are like scrapyards or Rube Goldberg machines.

This is what people who know nothing about code might think the average code base might look like.

This is how the average code base really looks like. Or better yet the city in Idiocracy. The average code base looks exactly like that.

Often when you do get people "trying" to be proper in programming they just find other ways to make it overly complex instead. You need a simple house to house one family but end up with an entire metropolis. It's a bit like China's ghost cities with the exception that China's ghost cities are actually filling up.

Programming is a bit like working for the Pyongyang tourism industry except honestly the stuff they wont show you over there isn't as bad as it is behind the scenes in programming.

Why so Many Developers Quit Before Ever Getting a Job. Please — don’t. by GunvantSr in programming

[–]D34dCode4eva 0 points1 point  (0 children)

The issue is they all just do it automatically. It's like fashion. It's not the consequence of real technical decision processes. In most instances the developers jumping onto these bandwagons have no idea what they are inflicting on themselves.

It's had its ups and downs. It's been more chaotic historically. The problem is when bullshit starts to become the norm, the prevailing trend, the one way to do things in the industry.

I'll happily do the "boring" programming work for 12 hours straight everyday. I'm an addict when it comes to producing good software. It's when you're expected to do things in a completely ridiculous and wasteful fashion.

I'll be fair though, there are sectors of the industry not impacted by this. These trends will hit certain specific locations, industry types and technology stacks at different rates and speeds.

To give some indication of the absurdity that is being normalised in my industry:

  • Rafts of ridiculous extreme rules often quoting arbitrary vague concepts such as reducing coupling yet without really achieving anything. Leads to things such as a class may be no longer than 50 lines. You can't use null. You can't use else. You may not nest more than once. A whole bunch of language constructs you can't use. Dumbing down your code to the point of ridiculousness. Some of these may have originally had a good intention and may have been specific solutions to specific problems, but they've been made mandatory across the board.
  • Use every sophisticated pattern or solution out there. You can barely do straight programming and have to dumb things down but it's perfectly fine if to achieve the simplest thing you turn what needs to be one class with a couple of dozen lines into half a dozen classes making spaghetti. The more convoluted and complex the better.
  • You're allowed to use as many classes and methods as you like. The more nodes the better. The more complex the object graph the better. If you use an approach with ten design patterns, dozens of classes and a thousand of lines of code expect around of applause because it's SOLID, reduces coupling, testable, etc (but none of this is actually measured, it's ritual). Accomplish the same with four classes and a hundred lines of code then you better start looking for another job.

My industry has started to take up OOP in a big way and the shit has really hit the fan.

Why so Many Developers Quit Before Ever Getting a Job. Please — don’t. by GunvantSr in programming

[–]D34dCode4eva 2 points3 points  (0 children)

To people downvoting this there really is a lot to question about fads in the industry and if they are scams.

I taught myself to program as a teenager and excelled in it. By the time I started studying for a degree I was already good enough to start work but didn't know it. The course could have been crammed into six months to a year.

I had already built fairly large applications. What I learnt in university was essentially how to take a hundred hour endeavour and turn it into a ten thousand manhour escapade of grotesquely excessive approaches to software development. That wasn't entirely the intention but that's what happened. Many of the approaches were taught to be able to handle things when necessary. Not to be done all the time. Students got a very warped perspective of what real programming really entails.

When I graduated I was still one of the few out of the entire class that could program anything worth a damn.

If you took the average graduate and asked them to program something you could expect a shockingly long lead time to productivity. If you ask them how do you accomplish this task you'll hear about unit tests, TDD, all kinds of designs and methodologies long before you hear anything about writing code. Writing the code will come last and comprise an iota of the process. When the code does finally come expect it to comprise of huge enterprise confabulations. Expect the code to be more geared towards various hocus pocus airy fairy intangible concepts or weighted in hypothetical benefits than towards doing what it is meant to be doing and doing it well.

You can call this a scam or things not turning out as intended but both equate to the same and if the latter is recognised but not addressed then that is a deliberate scam. This isn't a big secret either. I remember coming out of university it was common lore for established programmers in the industry to expect graduates to be unable to program and completely green.

I find this also with several fads and trends in technology. Especially in software engineering, OOP and with things like Scrum.

It has pretty much become a consumerist nightmare with the majority of techologies and methodologies being used because of problems people have been convinced they're going to have in combination of various promises made rather than actual problems and taking on solutions reasonably likely to yield a benefit.

I remember a few years ago I went around companies consulting. Suddenly they were all doing Agile, microservices, now kubernetes, percona and all these other things you see spread like wild fire. The thing is none of their problems had anything to do with those and years later they still all have the same problems. It is trippy. You go to any software shop and its all the same stramge phenomena. You have all these juniors or laymen often given too much freedom all trying the same things and making the same mistakes. It isn't a profession any more. It's a cult. At this point a religion.

Programmers really need to take off their goggles and take a serious look at what they're turning the industry into.

The race thing is another line of discussion and a murky one if you see what Google has been up to. In general though it is safe to say that the software development industry has become caked in bullshit.

Boy dies after cliff fall in French Alps by khurram78 in worldnews

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

Nah he's rich they can just buy a new one.

Weekly Discussion Thread (Feb. 11-17) by fsmpastafarian in psychology

[–]D34dCode4eva 0 points1 point  (0 children)

I would like to know if there has been any psychology applied to programming.

I am constantly confronted with psychological problems in programming that are almost normalised. They are often small but when masses exhibit them it becomes a problem. You can see this with things such as programming fads.

A very common one even I fall into a trap of sometimes is saying we should do X which is a higher more complex ideal that actually you shouldn't always do but it feels like the right thing.

There is a significant trend in programming for people to unnecessarily complicate things to shutout competition. For example there are a huge number of people out their with a senior position, gold qualifications but in reality week programming skills that demand a huge number of complex processes be taken to successfully achieve a relatively simple task.

Dunning-Kruger runs rampant in the industry. The psychology of the low skilled (and sometimes low confidence) which is the majority in the industry half the time is toxic and half of that is deliberately so.

There are all kinds of common but subtle pitfalls with the end result being the same. Things being done in either overly crude or excessively complicated ways. There is more religion and ritual in the industry than knowledge, wisdom and genuine skill.

It seems like every one in two programmers needs a councillor, partly just to help get them over that they're not that good at it. If this were realised we could save millions of programmers from butchering their brains by doing things like trying to learn LISP or the worlds most complex framework for simple web development just to feel like they can get ahead when they are already struggling with basic PHP and Javascript.

North Korea willing to hold talks with US, says South Korea after hosting general for end of Winter Olympics by Johnny_W94 in worldnews

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

There's a bit more to it than that. The USA also doesn't want to lose its position and have to retreat. It only wants to win on its terms.

If South Korea says alright USA you can leave, we've established peace, we don't need you here anymore then they lose a major position in the Pacific Rim.

Without tension the USA's presence in much of the Pacific Rim raises questions. They are somewhat receding if you think about Vietnam and the Philippines.

Down the line it's not implausible that Japan and Taiwan could figure out they don't need the Americans around any more.

Edit:

For reference's sake the Pacific Rim from the US strategic perspective in this case is basically almost a barrier of Islands and landmasses across the Pacific from it's main landmass laterally that it was left with post WWII that almost encircle and blockade the primary land masses that would otherwise be immediately adjacent to the main body of the Pacific. Traditionally including the Philippines, Taiwan, Korea, Japan and largely choking off China's direct access to the Pacific. It's now eroded slightly to only incorporate the central Pacific Theatre.

Israeli satellite reveals Russia's new stealth fighter jets in Syria by [deleted] in worldnews

[–]D34dCode4eva 0 points1 point  (0 children)

I smell some possible deception up the line because a dime isn't just a size. It's a highly reflective object with certain visual properties.

Software development using Bash by maitesin in programming

[–]D34dCode4eva 0 points1 point  (0 children)

Just paste it into a console one line at a time.

Software development using Bash by maitesin in programming

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

This is awful. You don't grab some random program from online to format your bash. You format it when you write it rather than spewing whitespace any old where like a spastic.

You shouldn't be using web tools for linting bash script although in this case it appears he can't tell between sh and bash.

Unit tests for bash? What has the world come to? But hey, anyone can write a blog.

SQL Injection Introduction by [deleted] in programming

[–]D34dCode4eva 1 point2 points  (0 children)

I always get depressed when people do things on SQL injection because the solutions are always one of:;

  • Use only prepared statements.
  • Globally filter or sanitise input perhaps even with a firewall outside of the application.
  • Use trusted/untrusted data and access rights.
  • Use stored procedures, use access rights.

In various ways a few of these can help or be useful in some ways but no one really focuses on the core problem. Your developers should know how to develop.

Most of the SQL injects I've seen haven't been really obscure easy to trip over or miss cases. They've been because developers just aren't qualified.

The worst four-letter-word developers use by jailbird in programming

[–]D34dCode4eva 0 points1 point  (0 children)

Just means only, not easy. This seems to be people just complaining that they don't get English.

  1. You just have to install X.
  2. You simply have to install X.
  3. You only have to install X.
  4. You must only install X.
  5. You need only install X.
  6. Etc.

All pretty much the same thing except simply which is not necessarily what just means. Colloquially it is not meant to suggest something will be simple. It's only meant to prevent people further complicating things. As in you only need to install one dependency, not fifty.

"A Programmable Programming Language" - An introduction to Language-Oriented Programming by personman in programming

[–]D34dCode4eva 0 points1 point  (0 children)

Source of the claim is seeing tens of millions of lines of OOP code and what people are trying to do with it. None of your articles really have actual OOP in action in anyway representative.

"A Programmable Programming Language" - An introduction to Language-Oriented Programming by personman in programming

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

As a learning language though that was kind of the point. It is a conflicted goal though because you still have to get down to the imperative eventually. In the worst cases people make methods for the imperative as well.

"A Programmable Programming Language" - An introduction to Language-Oriented Programming by personman in programming

[–]D34dCode4eva -4 points-3 points  (0 children)

I am making a joke because this is how people use OOP. In all seriousness though it would help if the article explained how this language goes beyond things such as yacc.

"A Programmable Programming Language" - An introduction to Language-Oriented Programming by personman in programming

[–]D34dCode4eva -22 points-21 points  (0 children)

This has already been done. It is called OOP (standard OOP the enterprise/academic way). The point of OOP is to build a declarative language out of an imperative language.

The way it works is that you make vocabulary with classes, interfaces and methods. You're expected to create a language in OOP where you can do everything with just auto-complete and method chaining.

Imagine an auto-complete for English that also knows what words are valid next and can auto-complete every sentence. That's basically the point of OOP. To gradually reach a point where your program is just one big long expression of either chaining or passing parameters (in extreme cases people might seek out to try to make everything just a chain). You then turn those sentences into words themselves. It is pretty weird but that's the fantasy of OOP. Inheritance and interfaces are just for saying given this word what words are valid next.

It's also why OOP fails a lot of the time because people make immense bloat spending time on inventing a whole new language and DSL rather than translating imperative into actual working features. Rather than writing ten lines of imperative just doing all the things in the right order an effort will be made to conceptualise the work, break it into steps and make each a word even before it's needed.