Remix.run Logo
carlosjobim 3 hours ago

Thinking that memorizing insane code rules is being skilled in making software is like thinking that memorizing all the generals' birth days is being skilled in warfare.

Before AI, trying to program even a simple thing was an exercise in frustration from rules that had only been put in place by programmers to protect their own jobs and make it as difficult as possible for a normal person to develop. Oh! You mixed tabs and spaces, now your code will not compile and you're stuck another day. Oh! You forgot a semicolon, now the code won't run, even though the software points out your missed semicolon and thus knows how to fix it.

AI takes care of all that bagage and now I and others can make fully functional software that solves real world problem for real people.

mpalmer 2 hours ago | parent | next [-]

I'm afraid you never understood the job if you think it's just "memorizing insane code rules".

skydhash 2 hours ago | parent | prev | next [-]

> memorizing insane code rules is being skilled in making software

That’s on the level of complaining about having to learn music theory to play the piano, or to learn grammar to write a report. Or having to learn the road rules to drive a car on the street.

carlosjobim an hour ago | parent [-]

Have you ever seen a police report? They are the people who write most reports of any profession, and usually they are full of grammar and spelling mistakes.

But I understand that the majority of hackers here think that spelling mistakes in a report means that somebody is bad at their job as a police officer. And I know that a good portion of hackers here think that a suspect should have all charges dismissed if a police officer has mixed tabs and spaces when typing his final report, or forgot a semicolon. Or used ' where he should have used ".

skydhash 41 minutes ago | parent [-]

Nope. Doing a syntax error in a programming language is the equivalent of filing the wrong form or filing the form incorrectly. Like if the question was “Suspect Height” and you put “green”.

Indentation rule are about scoping, You need a delimiter to mark end of a statements, and quoting often have to do with value type and interpolation. They’re not merely visual markers. Messing them up is the equivalent of answering “400 miles” when asked “what’s the color of the sky?”.

ADDENDUM: Yep writing code is filing a form. And just like any form, it’s easy to validate basic errors like syntax and type of values. The hard thing is to validate what happens after the form is processed. i.e, the intent of filing that specific form.

imtringued 2 hours ago | parent | prev [-]

I've never had a problem mixing tabs or spaces in any language that supported this, which is basically most languages.

I've spent the last three weeks working out a spec and didn't even start the development process yet.

The idea that the syntax of the language would ever be a bottleneck sounds ridiculous to me.

The gate keeping allegations are also incomprehensible. The vast majority of developers are working on making their jobs easier. There wouldn't be an endless stream of new programming languages, libraries and frameworks, if there was a software guild that you needed approval from to work on software. Even if such a guild existed, it would get obsoleted by the competition.

There are cases of people maximizing their own job security by writing terrible and incomprehensible code, but most experienced developers have gotten bitten by their own cleverness and try to make their code as easy to understand and as accessible as possible.

Things like Java Server Faces and Java Enterprise Edition died out a long time ago. The XML craze is over. Roy Fielding style REST/HATEOAS is dead and everything is an HTTP API with OpenAPI docs nowadays. People understand by now that micro service architectures only make sense for organisational purposes but not for technical reasons. NoSQL also waned and everyone is basically putting their JSON into PostgreSQL if they need to store complex hierarchical data.

Why do you even care about irrelevant things like semicolons? Like, any reasonable editor gives you squiggly lines so you can't miss them, meanwhile in practice having a line delimiter helps disambiguate hairy expressions and produce more readable error messages. For me they are an imperceptible cost that I couldn't care less about.

If you talked about null pointers, which are basically a landmine in every line you've ever written, waiting for a chance to explode, maybe you'd have a point but even nullable pointers are an idea that is being relegated to the history books.

carlosjobim 2 hours ago | parent [-]

> The idea that the syntax of the language would ever be a bottleneck sounds ridiculous to me.

Great! Then you can pick any man of the street and show him some code, and he will understand the syntax intuitively and start coding? Dollar signs, semicolons, brackets and === and the difference between "" and ''. It's all self explanatory.

Driving a motorized vehicle was a highly specialized task in the beginning. You had to prime fuel, adjust carb needles, maybe tighten a chain after a day of driving. Manufacturers did all they could to make vehicles as easy as possible for the users, so that they can focus on actually driving, and not fighting against the machine. Look at where cars are today - anybody can drive without needing any skills relating to the machine. AI is doing the same for programming, which is great.

Now a common man can make software without learning thousands of different arbitrary rules.

skydhash 2 hours ago | parent [-]

Can you pick any man of the street and show him some text in a foreign language and get him to translate it? Especially with a foreign script? Can you write in japanese? or Persian? You had to go to school to learn how to write, you were not born with that knowledge.

A programming language is way easier than learning a foreign natural language. I believe the issue you struggle with is formal logic, not the syntax. Not everyone is trained to think formally (and some may find it arduous).