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
9-Volt Assault
Jan 27, 2007

Beter twee tetten in de hand dan tien op de vlucht.

Elias_Maluco posted:

pascal is still alive in delphi, inst it?

is delphi alive, by the way?

My previous employer had everything build in Delphi, and paid the programmers a really large amount of figgies to stay as they realized it was getting quite hard to find any replacements. They did a pilot project to rewrite things to C# but the existing software was such a goddamn mess that it was quickly abandoned as they couldnt spare the manpower to continue working on it. That was 5 years ago and they are still working with Delphi.

Adbot
ADBOT LOVES YOU

Sweevo
Nov 8, 2007

i sometimes throw cables away

i mean straight into the bin without spending 10+ years in the box of might-come-in-handy-someday first

im a fucking monster

ultravoices posted:

did pascal just die because of that considered harmful essay, because it was the language for a decade plus

iirc it was only really ubiquitous in the PC world, and slanted very much towards the hobbyist scene. if you wanted to write a rotating 3d fire cube for VGA mode 13 then pascal was everywhere. C was already the de-facto standard for everything else

Truga
May 4, 2014
Lipstick Apathy
i started pascal when I was 8 or 9, for 3 years, then as a hobby until high school, then had it in high school for 4 years too. did pretty good in programming competitions at a national level throughout most later of those years (all programming competitions here were pascal back then)

i loving hate what it did to me, i still sometimes end up thinking in pascal when i'm trying to write something complex, but the := thing was the best. i really wish more languages used that.

ultravoices posted:

did pascal just die because of that considered harmful essay, because it was the language for a decade plus

pascal worked great back when everything could be made from scratch in a couple weeks/months. once you needed to load 2 gigs of lovely libraries just to turn on your pc, pascal couldn't really compete, since the libs weren't there. most people who bothered writing libs early did it in c, both because it was there earlier so you'd write in the thing that is compatible, and since the program layout is closer to machine code than pascal, and that kinda mattered a bit. dunno how things are now though. i know freepascal is basically super turbo pascal, but that's about it. i do most of my work in python or c++ these days.

Elias_Maluco posted:

is delphi alive, by the way?

every single lovely hang prone accounting app i've ever seen was delphi, which is also all of them.

Symbolic Butt
Mar 22, 2009

(_!_)
Buglord

Cocoa Crispies posted:

clang gives you warnings on this type of poo poo, you should be using -Werror, and also write them as yoda comparisons

I had no idea this convention was called "yoda comparison" :3:

cinci zoo sniper
Mar 15, 2013




turbo pascal and delphi are still a thing in latvian education. i took a pascal uni class in 2011, friend had delphi in community college a year before

The MUMPSorceress
Jan 6, 2012


^SHTPSTS

Gary’s Answer

cinci zoo sniper posted:

turbo pascal and delphi are still a thing in latvian education. i took a pascal uni class in 2011, friend had delphi in community college a year before

i think a lot of high schools use pascal because the tools are all free and it looks enough like most "real" programming languages that the skills transfer. that's where i learned it at least.

Bloody
Mar 3, 2013

we did java in high school because the ap test did java

carry on then
Jul 10, 2010

by VideoGames

(and can't post for 10 years!)

we did not do programming in high school because the teachers barely knew how to work the drat things

in 2010

ThePeavstenator
Dec 18, 2012

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

Establish the Buns

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

Bloody posted:

we did java in high school because the ap test did java

same and after having the language presented to me twice as an intro to programming I think it's actually a bad choice for introducing programming

Xarn
Jun 26, 2015
Probation
Can't post for 10 minutes!
It definitely is.

fart simpson
Jul 2, 2005

DEATH TO AMERICA
:xickos:

my dad is a high school music teacher but he had a single class in basic in 1982 so the school forced him to teach computer programming because that was better qualifications than any other teacher there

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

St Evan Echoes posted:

i kind of like = for equality and := for assignment

hosed up but true

eq and eql and equal and = for equality, setf for assignment

ultravoices
May 10, 2004

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

eschaton posted:

eq and eql and equal and = for equality, setf for assignment

now without looking it up, distinguish between the lisp equals

ThePeavstenator
Dec 18, 2012

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

Establish the Buns

:burger::burger::burger::burger::burger:
I can't find it right now but I read an article a few weeks ago saying that Java was a poor choice to introduce programming. Their reasoning was that

code:
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}
involves telling newbies to not worry about what a class is, what public static void main(String[] args) does, or what System.out is. I agree in the sense that if you have to tell students to ignore a bunch of text and shield them from the nuts and bolts of a language to teach them how to write "for" loops then you should probably pick a different language.

However their solution was to kick the "don't worry about it" can further down the road by using loving JavaScript with the logic that

code:
alert("Hello World!");
is so simple and clear! Plus the language is so forgiving! Also Java is like, totally outdated grandpa!

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

ultravoices posted:

now without looking it up, distinguish between the lisp equals

I return nil

Symbolic Butt
Mar 22, 2009

(_!_)
Buglord

eschaton posted:

I return nil

lmao

ultravoices
May 10, 2004

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

eschaton posted:

I return nil

i remember that one is like python == and one is like python "is" but there are all sorts of tiny wrinkles that will blow up in your face if you try to make fine distinctions.

i'm sure it sounded like a great idea in 1968.

Sapozhnik
Jan 2, 2005

Nap Ghost
Yeah java is a bad teaching language, for what are mostly avoidable reasons unfortunately.

The MUMPSorceress
Jan 6, 2012


^SHTPSTS

Gary’s Answer

ThePeavstenator posted:

I can't find it right now but I read an article a few weeks ago saying that Java was a poor choice to introduce programming. Their reasoning was that

code:
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}
involves telling newbies to not worry about what a class is, what public static void main(String[] args) does, or what System.out is. I agree in the sense that if you have to tell students to ignore a bunch of text and shield them from the nuts and bolts of a language to teach them how to write "for" loops then you should probably pick a different language.

However their solution was to kick the "don't worry about it" can further down the road by using loving JavaScript with the logic that

code:
alert("Hello World!");
is so simple and clear! Plus the language is so forgiving! Also Java is like, totally outdated grandpa!

that's dumb. abstracting away advanced and difficult material is a basic part of teaching. the o-chem i learned in high school hand waves over a lot of stuff that is critical once you get to advanced o-chem. it's because you need to understand basic building blocks before you move up.

in programming poo poo like System.out exists specifically to abstract away even from us advanced programmers what is involved in putting output on the console. you start by just making simple programs (print this, calculate this, make a tic-tac-toe game) and get students used to thinking in loops and logical control structures. once they can actually do that, then it's time to start learning the trappings of whatever language you're in. there exists no language where there are 0 language-isms to gloss over for beginners. even if you pick something painfully plain there's still going to be bits and bobs that you treat as magical incantations to start off with. this just sounds like backdoor complaining about java boilerplate to me rather than anything substantive about teaching programming.

if you picked c# you still have to explain Main and args arrays and all that. if you picked c you're going to end up teaching structs as magic boxes for a while before you get to the concept of memory layout. if you picked vb you're going to gloss over wtf is a variant for a long as time even though you'll need it early on for carting data around.

there's no optimal language for teaching programming. just pick one the instructor knows well and build a decent curriculum. that's it. gently caress, all of our technical services people learn programming for the first time via mumps and many have gone on to be successful programmers at other companies.

Shaggar
Apr 26, 2006
javas a fine teaching language. any initial awkwardness in the first few classes is totally outweighed by the superior tools and frameworks. c# would be a fine teaching language as well, but the stuff you could do w/ maven wrt courses and assignments would be rad as hell

Shaggar
Apr 26, 2006
also you could start w/ a java-like that is just a procedural language w/ methods that behind the scenes is just a single class w/ the methods and a main.

Sapozhnik
Jan 2, 2005

Nap Ghost
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:

Bloody
Mar 3, 2013

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

Bloody
Mar 3, 2013

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:

teach haskell and karnaugh maps in the first semester then work towards the middle

CPColin
Sep 9, 2003

Big ol' smile.
You could start young with BASIC and be doomed to occasionally read dollar signs as "string" forever, like me!

cinci zoo sniper
Mar 15, 2013




time to disrupt the programming teching industry

lets start with php

Bloody
Mar 3, 2013

i started young with clisp :smugmrgw:

PIZZA.BAT
Nov 12, 2016


:cheers:


when i learned java in high school the teacher set up our environments so that the IDE greyed out, locked, and collapsed all the distracting boilerplate so we could only focus and work on what she wanted. on the first day she said 'don't worry about all that grey text you'll learn what all of that does later' and it seemed to work out ok for us.

Shaggar
Apr 26, 2006
yeah that's exactly how id do it, or something very similar

Bloody
Mar 3, 2013

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

ultravoices
May 10, 2004

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

cis autodrag posted:

there's no optimal language for teaching programming. just pick one the instructor knows well and build a decent curriculum. that's it. gently caress, all of our technical services people learn programming for the first time via mumps and many have gone on to be successful programmers at other companies.

i settled on python on my junior programmer odyssey because a repl is real handy for immediate feedback & discovery, there are a ton of learning resources, it was easy for my basic addled brain to wrap my head around, and it could do things that were immediately useful to me.

Shaggar
Apr 26, 2006
I don't think it really matters which useless toy language you learn. that said f# lives on top of a real stack

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

ultravoices posted:

i remember that one is like python == and one is like python "is" but there are all sorts of tiny wrinkles that will blow up in your face if you try to make fine distinctions.

i'm sure it sounded like a great idea in 1968.

the general rule for the ones that start with "eq" is that the shorter the symbol the more efficient they are, because the less they do

I'd generally either use eq because I really want to check that two references are to the same object, or equalp because I really want to check that two referenced objects are equivalent regardless of identity, and use = just for simple numeric comparison

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

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

were I you I'd learn F# because it's part of the ecosystem you're already working in and Microsoft has built real tooling around it beyond a basic text editor

also because of the frothing rage it will induce in the Rust Evangelism Strike Force

LinYutang
Oct 12, 2016

NEOLIBERAL SHITPOSTER

:siren:
VOTE BLUE NO MATTER WHO!!!
:siren:
Java as a teaching language is another one of those hilarious cultural tragedies of the programming world that people only recognized too late

LinYutang
Oct 12, 2016

NEOLIBERAL SHITPOSTER

:siren:
VOTE BLUE NO MATTER WHO!!!
:siren:

ultravoices posted:

i settled on python on my junior programmer odyssey because a repl is real handy for immediate feedback & discovery, there are a ton of learning resources, it was easy for my basic addled brain to wrap my head around, and it could do things that were immediately useful to me.

Python is a fantastic teaching language, I introduce non-tech friends to it and they're shocked at how intuitive and fun it is to learn

One of them had checked out an intro to programming book a few years earlier and was pretty quickly put off by the mangled keyword soup that Java forces you to spit hello world onto a console, and hell I don't blame her

Shaggar
Apr 26, 2006
python is a trash language for trash people and if you were taught it in school you went to a trash school

Bloody
Mar 3, 2013

my dad tried to learn python, but quickly wrote it off as poo poo due to its terrible type system

LinYutang
Oct 12, 2016

NEOLIBERAL SHITPOSTER

:siren:
VOTE BLUE NO MATTER WHO!!!
:siren:

Shaggar posted:

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

I know CMU uses it as a teaching language, pretty sure MIT does too

God bless

Adbot
ADBOT LOVES YOU

Bloody
Mar 3, 2013

mit undergrads are just as stupid as every other kind of undergrad

  • Locked thread