Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

Sapozhnik posted:

Start teaching programming from mips or risc v assembly language and work up from there

Fake edit: in fact, start with wires and mosfets and work up from there

gently caress em if the poor little dears find this all boring and inapplicable. Go to some second rate school if you want to be taught how to pound nails :smug:

I did the simple circuits -> diodes -> transistors -> gates -> flip flops -> z80 thing in Highschool. it was good.

Adbot
ADBOT LOVES YOU

carry on then
Jul 10, 2010

by VideoGames

(and can't post for 10 years!)

Bloody posted:

our intro to java used a magical library to abstract away a lot of the nuts and guts giving us a really simple "your program starts here. say new square(0, 0, 20, 20); to get a 20x20 pixel square" it was a bunch of awt stuff under the hood but it was completely irrelevant. in ap computer science we got into the public static void main but by then we had a year of java under our belts so it wasnt overwhelming

was it bluej? because we had bluej

carry on then
Jul 10, 2010

by VideoGames

(and can't post for 10 years!)

surprise surprise, most practicing programmers look back fondly on their first language and will die on any hill to defend it as the one true choice of teaching languages

ThePeavstenator
Dec 18, 2012

:burger::burger::burger::burger::burger:

Establish the Buns

:burger::burger::burger::burger::burger:
Idk, going from "everything is a reference" to "in C++ you can pass by pointer, reference, or value" was awkward for me. Or things like Synchronized blocks were complete enigmas until I learned what semaphores and mutexes were.

I do like Java, especially because I can now appreciate what it abstracts away. I just think that it would have been easier to learn memory management and threading fundamentals earlier in my education rather than going back and trying to learn it after using Java threads for a whole term.

cinci zoo sniper
Mar 15, 2013




carry on then posted:

surprise surprise, most practicing programmers look back fondly on their first language and will die on any hill to defend it as the one true choice of teaching languages
it was c++98 or c++03, i dont remember and won't blame anyone for anything else

Slurps Mad Rips
Jan 25, 2009

Bwaltow!

Bloody posted:

should i learn f# or should i learn rust i think i have a stupid project thats well suited to learning either with

Do you want to get mad about obscure and unhelpful compiler messages requiring you to google for the meaning only to discover that you can't find it because the language has been in development for so long that the advice is either super out of date or no longer applies because of newer features or APIs in addition to long compile times

-OR-

Do you want to get mad about obscure and unhelpful compiler messages requiring you to google for the meaning only to discover that you can't find it because the language has been in development for so long that the advice is either super out of date or no longer applies because of newer features or APIs in addition to long compile times and runs on .NET?

Shaggar
Apr 26, 2006
my first languages were pascal and c++ and both of them were garbage

Sapozhnik
Jan 2, 2005

Nap Ghost

carry on then posted:

surprise surprise, most practicing programmers look back fondly on their first language and will die on any hill to defend it as the one true choice of teaching languages

My first langs were basic, visual basic, c++, perl, and php

Gonna go with no

Bloody
Mar 3, 2013

Slurps Mad Rips posted:

Do you want to get mad about obscure and unhelpful compiler messages requiring you to google for the meaning only to discover that you can't find it because the language has been in development for so long that the advice is either super out of date or no longer applies because of newer features or APIs in addition to long compile times

-OR-

Do you want to get mad about obscure and unhelpful compiler messages requiring you to google for the meaning only to discover that you can't find it because the language has been in development for so long that the advice is either super out of date or no longer applies because of newer features or APIs in addition to long compile times and runs on .NET?

im not sure. both sound appealling

i suppose i could also just do it in haskell but feh

MononcQc
May 29, 2007

my first language was JScript, MS' old proprietary version of JS that only ran in IE. My second PL was PHP. I'm kind of feeling alright that I don't have warm fuzzy feelings about them.

ultravoices
May 10, 2004

You are about to embark on a great journey. Are you ready, my friend?

Shaggar posted:

python is a trash language for trash people and if you were taught it in school you went to a trash school

what happened to you as a child that you feel the need to continue playing this character

Shaggar
Apr 26, 2006
its about having experience that children don't that tells me p-langs are trash.

LinYutang
Oct 12, 2016

NEOLIBERAL SHITPOSTER

:siren:
VOTE BLUE NO MATTER WHO!!!
:siren:
Java is the superior language for Smart Grownups, just ignore the hundreds of thousands of crapware Android apps out there

ultravoices
May 10, 2004

You are about to embark on a great journey. Are you ready, my friend?

Shaggar posted:

its about having experience that children don't that tells me p-langs are trash.

where did they touch you

Shaggar
Apr 26, 2006

LinYutang posted:

Java is the superior language for Smart Grownups, just ignore the hundreds of thousands of crapware Android apps out there

you can write good or bad programs in java but you can write good programs in a p-lang

JawnV6
Jul 4, 2004

So hot ...

Sapozhnik posted:

Fake edit: in fact, start with wires and mosfets and work up from there

*hand-on-chest staggering backwards* j..just giving them pre-doped silicon??


but how do you expect them to learn?!??

Cocoa Crispies
Jul 20, 2001

Vehicular Manslaughter!

Pillbug

MononcQc posted:

my first language was JScript, MS' old proprietary version of JS that only ran in IE. My second PL was PHP. I'm kind of feeling alright that I don't have warm fuzzy feelings about them.

yeah unless you have to stay in a boring hell stack like .net or jvm to eke out a living pumping out denied insurance claims and inflating medicare bills there're a lot of cool languages doing neat things out there

Shaggar
Apr 26, 2006
lol

Shaggar
Apr 26, 2006
I'm imagining cocoa crispies here telling new recruits ruby is all cool and new to get them to maintain his legacy apps in a dead language.

hifi
Jul 25, 2012

i don't get why everything you read about programming is in such a hurry to get to the "awesome stuff". giving a basic overview about a language api and program entry (why do i have public static void main) is like one day of class and it lays the groundwork for when you learn something new. instead every new language has a "how easy is it? just type in your string and press enter and bam it's there" emeril style hello world.

wide stance
Jan 28, 2011

If there's more than one way to do a job, and one of those ways will result in disaster, then he will do it that way.
My first full-time gig language was VB6 and my subconscious defense mechanism repressed it from memory nicely.

Thank you.

Cocoa Crispies
Jul 20, 2001

Vehicular Manslaughter!

Pillbug

hifi posted:

i don't get why everything you read about programming is in such a hurry to get to the "awesome stuff". giving a basic overview about a language api and program entry (why do i have public static void main) is like one day of class and it lays the groundwork for when you learn something new. instead every new language has a "how easy is it? just type in your string and press enter and bam it's there" emeril style hello world.

because if you make people do busy work like writing out long rear end type names twice to create a variable or type "public static void main" they'll hate programming and never want to do it

i know some of y'all think this is a good thing too so gently caress you

Bloody
Mar 3, 2013

c# has all of the awesome stuff

The MUMPSorceress
Jan 6, 2012


^SHTPSTS

Gary’s Answer

LinYutang posted:

Java is the superior language for Smart Grownups, just ignore the hundreds of thousands of crapware Android apps out there

Saving Money Is Cool, just ignore all the thousands of scam hedgefunds out there.

Shaggar
Apr 26, 2006
lol forever @ p-langers whining about descriptive names because they're used to poo poo tools

Symbolic Butt
Mar 22, 2009

(_!_)
Buglord

Cocoa Crispies posted:

because if you make people do busy work like writing out long rear end type names twice to create a variable or type "public static void main" they'll hate programming and never want to do it

i know some of y'all think this is a good thing too so gently caress you

people also want to understand everything they're typing so even if you say "it doesn't matter how the 'static' keyword works for now" they'll still read up on it and try to understand it and fail at it.

this is a really big recurrent thing I noticed while teaching

hifi
Jul 25, 2012

Cocoa Crispies posted:

because if you make people do busy work like writing out long rear end type names twice to create a variable or type "public static void main" they'll hate programming and never want to do it

i know some of y'all think this is a good thing too so gently caress you

there's an entire school of teaching programming where you give like an entire framework or half completed chunk of code and ask the student to fill it in. this doesn't have anything to do with the language.

and with programming, you signed up to touch a computer. I guess if you have some fancy architect job you can put your foot down and choose perl for its terseness, but if you're just some grunt chances are you're gonna get forced into a language like java that is verbose or c that has a billion ways to shoot yourself in the foot. You're not going to change the world from a junior dev job, so why are you expecting the schools not to teach you how to survive in that job? At some point in plumber school you have to teach the guy how to unclog a turd

ultravoices
May 10, 2004

You are about to embark on a great journey. Are you ready, my friend?

Shaggar posted:

lol forever @ p-langers whining about descriptive names because they're used to poo poo tools

try harder. try again.

JawnV6
Jul 4, 2004

So hot ...
my first college programming assignment was w/ Karel the Robot, a C framework that spun up a little GUI with a robot that walked around and put down tiles on a grid

it was just 1 assignment, went to real C w/ printf the next week, but i still think that had the spark of "usable" and to this day i don't understand coursework that starts with diving into linker options

Symbolic Butt
Mar 22, 2009

(_!_)
Buglord

hifi posted:

and with programming, you signed up to touch a computer. I guess if you have some fancy architect job you can put your foot down and choose perl for its terseness, but if you're just some grunt chances are you're gonna get forced into a language like java that is verbose or c that has a billion ways to shoot yourself in the foot. You're not going to change the world from a junior dev job, so why are you expecting the schools not to teach you how to survive in that job? At some point in plumber school you have to teach the guy how to unclog a turd

sure, but you can just teach Java, C# or whatever a little bit later, the cognitive load will be far lighter when the person already got the basics of thinking algorithmically

Mao Zedong Thot
Oct 16, 2008


Cocoa Crispies posted:

because if you make people do busy work like writing out long rear end type names twice to create a variable or type "public static void main" they'll hate programming and never want to do it

i know some of y'all think this is a good thing too so gently caress you

:agreed:

`public static void main` is indefensible for noobies learning programming, like yeah at some point it's important to know what those things are and mean -- but as the first loving things you 'just have to' type hahaha

hifi
Jul 25, 2012

Symbolic Butt posted:

sure, but you can just teach Java, C# or whatever a little bit later, the cognitive load will be far lighter when the person already got the basics of thinking algorithmically

like i said in the part of my post that you quoted, there are ways to get people to do that regardless of the language, and fun programming assignments are also possible regardless of the language.

i think a logo-like assignment framework in java that makes you program a turtle to go through a maze is way better than getting a MAZE.DAT file and doing the same thing in ruby, and in terms of cognitive load for algorithmic thinking, debugging the turtle going through the maze is way easier than stop starting the code as it's going through nested for loops.

gonadic io
Feb 16, 2011

>>=

Bloody posted:

should i learn f# or should i learn rust i think i have a stupid project thats well suited to learning either with

do you wanna just get poo poo done? f# is haskell with worse syntax and way way better tooling and libraries.

do you wanna do something cool? rust is cool and new and a little bit of a fight to learn

darthbob88
Oct 13, 2011

YOSPOS

VOTE YES ON 69 posted:

:agreed:

`public static void main` is indefensible for noobies learning programming, like yeah at some point it's important to know what those things are and mean -- but as the first loving things you 'just have to' type hahaha
This is why I unironically think JavaScript is a good choice for first programming language. There's less boilerplate in Babby's First JS Program than in a comparable Java or C# thing, and it's got a significantly faster turnaround from typing things into a script to seeing cool things on the screen. After a month or so of that, you can transition to algorithms and data structures with C# or Java or some other actually good language, but as a way to instill the wonder of making things with your brain, JavaScript is great.

Shaggar
Apr 26, 2006
never teach p-langs let alone dead p-langs like ruby. if you want to do a turtle thing theres already stuff like karel the robot or you could write something on top of java that abstracts away the type system and leaves only procedural code that they can then add methods to and then eventually move directly into java.

Cocoa Crispies
Jul 20, 2001

Vehicular Manslaughter!

Pillbug

darthbob88 posted:

This is why I unironically think JavaScript is a good choice for first programming language. There's less boilerplate in Babby's First JS Program than in a comparable Java or C# thing, and it's got a significantly faster turnaround from typing things into a script to seeing cool things on the screen. After a month or so of that, you can transition to algorithms and data structures with C# or Java or some other actually good language, but as a way to instill the wonder of making things with your brain, JavaScript is great.

the best part is that you already have the interpreter installed and ready to go

jesus WEP
Oct 17, 2004


just use c# interactive for your first few lessons and then progress to writing c# classes and use c# until you die

Bloody
Mar 3, 2013

Cocoa Crispies posted:

the best part is that you already have the interpreter installed and ready to go

if "download and hit next until its installed" or "use one of the lab computers during labs" is too high of a barrier for your introduction to programming class idk what ot say like maybe you won't make it as a computer user

Bloody
Mar 3, 2013

like obviously don't use c or c++ because its a nightmare getting those environments set up in ways that arent poo poo but like most good languages are extremely straightforward to deploy a development environment for even for non-technical women and children

Adbot
ADBOT LOVES YOU

Symbolic Butt
Mar 22, 2009

(_!_)
Buglord
also beginners learn better with dynamic typing than static typing :devil:

  • Locked thread