A female friend of mine is studying some kind of engineering, unno, mechanical or something...

A female friend of mine is studying some kind of engineering, unno, mechanical or something, and they have a basic SE course.

- Boohoo, for this assignment they won't let me use Visual Studio 15, we are only allowed VS10. The other class are allowed 13.
- Are you really so stunted by IDE's that a different version cripples you?

She proceeded to argue with me for 10 minutes that C is an ancient language and learning to program starting with good habits and low level languages is a waste of time and all she should care about is the end product working.

How did this happen? How did we lose the art of good programming? How did making a polished product become so unimportant?

...

>How did making a polished product become so unimportant?
If you're going to make money either way, then the choice is clear. Cutting corners is easier.

Why do they cut corners in education then? Jesus christ, they are doing to Programming what Subjective Aestheticism did to art a century ago.

>How did this happen? How did we lose the art of good programming? How did making a polished product become so unimportant?

Android developers.

she has a point

C is a bullshit language and is a clusterfuck to write non-vulnerable code

But is it good for learning programming? She complains they don't allow simpler languages and newer IDEs.

No, it is awful for learning programming.

>I'm too stupid to write C
Thanks for clearing that up for us, petal.

Sounds like she's throwing a hissy because she's about to get caught out regarding her ability to blag it through programming.

This, tbqh OP computers are fast enough now to power through bad and/or very high level languages for most applications.

I'd say the worst thing isn't some basic productivity software being hastily thrown together in Java but is the fact that gaymes these days all need monster PCs to run at all, not just at high detail settings. Only Eastern Euros attempt to optimise their games to work on most PC at least on low settings.

>female

that's the problem m8, they are shit in ANYTHING

Why do you say that?
C forces you to learn things that are abstracted away in any other language
It seems important to learn these things if you actually want to write good, optimized code you need to know these things, especially in languages like Java where you have to know if a certain local library makes deep copies of data or not (and why this matters)

of course if you would rather be a codemonkey who shits out cruddy mobile apps no one will ever use it doesn't matter, but then why even bother getting a degree?

She already has some experience in programming, usually machines in the employ of military. If my guess is right it was all IDE assisted and shit. I am just shocked that colleges allow such sloppiness too in early Year 1, and that she's so pampered a different version cripples her.

Can confirm C is good for learning. I do engineering and I had to start with C. Currently doing assignments where I must create the same program in assembly as well as C. Pretty interesting experience.

Tell your friend to stop whining, the ide isn't going to make a difference when you have your favourite text editor.

Don't think you learned C yet so go to bed kiddo.

...

>especially in languages like Java where you have to know if a certain local library makes deep copies of data or not
and how would knowing C help in this case? Do you learn Java libraries' implementations in a C course?

I don't think it is, when you're not glueing the Java standard library together and need to do something more unique then you need to actually program. That needs a very abstract way of looking at the problem and it certainly isn't learnt the way I did at uni
>Programs are made of objects
>Think of a vehicle, it has wheels, and engine and maybe some doors
>A car has all of those
>A bike has 2 wheels and no doors
>PROGRAMMING

Not even joking, that was it concept-wise.

I did senpai

even C is an abstraction, and it is not a good place to start.

>and they have a basic SE course.

Well, that's dumb as hell.

>we are only allowed VS10

Man, I'd be crying about that. If these numbers are accurate, I'd be pissed as hell. Visual Studio 2010 was a godawful, slow, buggy abomination. IntelliSense was completely broken for C++ (and presumably C).

2003 was mediocre. 2005 and 2008 were pretty good. 2010 was a goddamn piece of shit. 2012 and 2013 were good. I haven't used 2015 yet.

>She proceeded to argue with me for 10 minutes that C is an ancient language and learning to program starting with good habits and low level languages is a waste of time and all she should care about is the end product working.

Yeah, that's probably true.

> How did we lose the art of good programming?

When did C become synonymous with "good programming"? That's only the case on Sup Forums. On HN it's Lisp. According to Linus Torvalds, all C++ programmers are retards, while C is, I guess, the holy grail of language (and it probably is, *for that specific purpose*). For some it's Go. For others it's Java (muh factory factory).

The whole industry is retarded. We have front-end Javascript hacks failing FizzBuzz, which has nothing to do with what they actually do. We have places like Google asking about the square-cube law when all you want to fucking do is write software. And we have you bitching at your "friend" because she doesn't want to waste her time being aggravated by wildly out of date course requirements.

It would be FAR more useful for her to learn some scripting language, and maybe something like R.

>shitty high-school-tier analogies to OOP

...

I told her text editors are the way to learn shit. She threw a shit storm at me.
"When did you last code anything?" (I'm in /sci degree now, not Sup Forums)
I told her I've been tinkering all summer. Killed my system twice and learned a lot. She proceeded to brag she's never killed a system.
It's like people just hate learning by doing, and would rather be served an end product.

This is how I learnt c++ god fucking damnit.

C isn't exactly high level though, what would you tell someone to learn as a first language that isn't abstract in your opinion?

Mate I have to be honest, it sounds like this friend of yours is a cunt. Is she hot at least? You trying to hit it?

I know, I was pretty disappointed tbqh famalam. At least the computer architecture course was much better. That tutor apparently quit teaching programming when they stopped using C++ in favour of Java.

abstract is good because programming is essentially just branches and operations

hardware and architecture details belong in a, well, architecture course.

>text editors are the way to be a tenfold less productive while not learning jack shit more than with an IDE
ftfy

C is essentially the lowest-level possible while still having portability.

Reminds me of a few years ago when all the fucking retards were bleating "JavaScript is the assembly language of the Internet!" No, fuckheads, JavaScript is the C of the Internet...

No and no. Trying to get her ass laid is a lost cause, she's approaching it about as sloppily as studying programming.

>what is a deeper understanding

>sloppily
Kek

>I told her text editors are the way to learn shit

You have no idea what you're talking about, and you're focusing on learning the wrong things for the wrong reasons.

While your friend is off employed, creating value, you're going to be wondering why you're having a hard time finding a job. If you finally find one, you'll wonder why your reviews are bad, since you're the only person on the team who knows X, where X is some trivial bullshit with near-zero value to the team, that you personally obsessed on for far to long.

I will say that for OOP languages, an IDE makes sense to use but for C and other procedural languages I like to use a text editor. Feels old school.

Mate chill out his friend isn't reading this and won't fuck you

Too bad I'm not in the field, faggot. I just believe that early learning should be basics up, not easy way.

Well if you can't write code in a text editor...then what exactly can you write?
I'm getting the picture the only experience she has is mashing enter non-stop while the ide suggests crap. Kinda like writing on your smartphone only using autocorrect and suggestions rather than actually typing.

C is a stepping stone though, getting to know what a function is is part of stepping into classes and more abstract things.

Can confirm as an Android developer. Know tons of people who write literal feces for their applications. Favorite horror story with a friend of mine:

>Yo how do I update the app in the background?
>Services, look them up.
>But it needs to update the main activity
>Services can do that even though it's got some fuckery
>I'll look into it
>A day later...
>How'd it go man? What did you do?
>Oh I did this bullshit where I opened and closed the activity in the background lmao somehow it works
>Holy shit never do that please
>But it works lmao
>...

>Too bad I'm not in the field, faggot.

Why do you imagine I was talking about software?

Your character defect is going to show no matter what field you pursue.

>I just believe that early learning should be basics up, not easy way.

No, here's what's going on:

1) YOU learned things in a particular way because that's what was offered to you and that's what YOU liked.

2) You're upset because your friend won't blindly follow your advice.

3) You have no reason to believe that your approach is in any way superior to any other approach.

4) You are culturally offended that someone would choose a path different than yours.

Again, you have no idea what you're talking about. You're doing the wrong thing for the wrong reasons.

The only people who say C is a bad language for learning programming is people who can't write C.

> projecting this hard
Whew, lad

Nope.

It's the same shit we see crop up here all the time. A bunch of poser losers who want to talk shit about people who don't like their stack, and who want to artificially generate a sense of superiority based on things that just don't matter.

"Real programmers use X!" says the guy sitting in mom's basement who can't seem to find stable employment.

Turn the projector off

>C programming book
>Over a quarter of the book is taken up by configuring a toolchain
Yeah, I can see why IDEs are common for new coders, being packaged with everything from the get-go.

>YOU learned things in a particular way because that's what was offered to you and that's what YOU liked.
Not that guy, but to be fair, we started with ANSI C at my university, so it's probably not him that thought it was a good idea, but someone a lot smarter than either of us.

I am studying sciences, Physics and Chemistry to be precise, and I am loving the process. Instead of being spoonfed all of it, it's more like guided discovery. It trains the intellect, it keeps your hooked, and you actually learn by doing. I believe Programming skills need a similar approach.

Oh wait, I'm sorry.. Were you FOR learning C or for NOT learning C?
Because I'm FOR learning C, and believe it's a very good language for learning programmings with the right approach and a good basic understanding.

Exactly what I meant. Dis OP and studying /sci/. Dat other guy is a douche

Oh.. All's well that ends well, then.
Have a nice day, user!

You too, friendo.

>Cutting corners is easier.
Until because of the cut corners the prroduct inevitably becomes buggy and unstable, and nobody can make the shitty mess of code work right

Managers thinking they know what to do when it comes to IT and programming are the most destructive problem companies can have

>How did this happen? How did we lose the art of good programming? How did making a polished product become so unimportant?
It was popularized by all those retards going "you can learn to program in just a day" and shit, and anything mainstreamed automatically loses its quality because it gets oversimplified

So how does someone who learned to code with IDEs learn good habits and low level languages? A lot of students are basically on their own when it comes to programming, and if the alternative to Visual Studio debugging/compiling tools is to open up notepad and make things happen it's obvious which one is preferred.

Art is something that needs some kind of apprenticeship for everyone not already creatively inclined to just do things on their own, and to meet demand colleges began churning out office workers like you get from business colleges instead of setting up an old school workshop.