Discuss Scratch
- ninjaMAR
- Scratcher
1000+ posts
what should i learn after scratch?
The question is what do you want to do next? What type of project do you want to make? There is no right answer of what kind of programming language you should learn.
- jale3ms
- Scratcher
100+ posts
what should i learn after scratch?
idk what i want to do That depends entirely on what you want to do.
haven't decided
maybe i need a generic language? python is TOO easy
Java/javascript/HTML is fun if you like Website making
EDIT: C/C+ are both fun for text based games
Last edited by jale3ms (Oct. 1, 2024 20:49:58)
- BigNate469
- Scratcher
1000+ posts
what should i learn after scratch?
Java and JavaScript are not the same thing.idk what i want to do That depends entirely on what you want to do.
haven't decided
maybe i need a generic language? python is TOO easy
Java/javascript/HTML is fun if you like Website making
EDIT: C/C+ are both fun for text based games
Browsers dropped support for Java years ago; meanwhile, JavaScript continues to be regularly used on the web and gets faster and more features all the time.
Java is primarily used for app development (notably Minecraft Java Edition uses it), and all (native) Android apps are programmed in Java.
- Maximouse
- Scratcher
1000+ posts
what should i learn after scratch?
Or another language that compiles to JVM, such as Kotlin. all (native) Android apps are programmed in Java.
- MineTurte
- Scratcher
500+ posts
what should i learn after scratch?
Lua is more similar to python than JS btw. Lua is rather similar to JS, and has more beginner-friendly features:as opposed toif foo then ... endand 1-indexed tables.if (foo) { ... }
It's also very fast thanks to LuaJIT, and supports more complex stuff for experts (metatables)
Edit: Not to mention PICO-8, which is a pretty good step up from scratch, uses Lua for scripting.
Anyways to help to the entire topic I'll list out some programming languages I believe are best to know and their uses (most likely repeated of what others said but just compiled into one post)
Javascript/HTML & CSS
JS can be used by itself as in you can learn JavaScript and make websites with just it (technically). You can edit and create elements in HTML/CSS using JS fairly easily once you understand it. Now for optimal usage you will want to pair it with HTML and CSS both which are impossibly easy to learn and the only real learning factor is just remembering different types of elements and how to properly style them / nest them.
Python
Python is a fairly universal language but for obvious reasons cannot be used to make websites nor really anything with actual graphics by itself. Now with the help of libraries you can but learning how to use a library is nearly as hard as learning an entirely new language especially if it's a massive library with tons of uses. I do not know of any library for website making as that would be wildly inefficient unless we are talking about backend web development in which case python is a major language for that. As for game making, the best library I could find is PyGame. Fairly big library but has pretty decent documents for getting people started. I myself never really got into game making with python as website game development is much better if you aren't using something like Unity (which python isn't widely accepted with unity).
Lua
Lua by itself is not very useful as it is basically just an addition to C. Nevertheless there are many major game creating software's and games themselves that use Lua. Such as Roblox. Roblox studio uses Lua. Another is Unity. Lua and C are the 2 main programming languages in Unity. Other than that I don't have much info on Lua as I rarely use it but I still know enough to provide some info.
Please if any of this information is incorrect or irrelevant someone tell me. Other than that hope this helps out!
Last edited by MineTurte (Oct. 2, 2024 14:21:25)
- ninjaMAR
- Scratcher
1000+ posts
what should i learn after scratch?
(#26)You can use python as a web server via django or flask.
Python is a fairly universal language but for obvious reasons cannot be used to make websites nor really anything with actual graphics by itself. Now with the help of libraries you can but learning how to use a library is nearly as hard as learning an entirely new language especially if it's a massive library with tons of uses. I do not know of any library for website making as that would be wildly inefficient unless we are talking about backend web development in which case python is a major language for that. As for game making, the best library I could find is PyGame. Fairly big library but has pretty decent documents for getting people started. I myself never really got into game making with python as website game development is much better if you aren't using something like Unity (which python isn't widely accepted with unity).
- TheSecondGilbert
- Scratcher
100+ posts
what should i learn after scratch?
With the languages everyone have introduced here, why not learn all of them and become a polyglot programmer? It doesn't hurt being able to code in multiple languages.
- MineTurte
- Scratcher
500+ posts
what should i learn after scratch?
That is what most people do to extend their field in programming (more jobs: more cash: happy life) With the languages everyone have introduced here, why not learn all of them and become a polyglot programmer? It doesn't hurt being able to code in multiple languages.
- BigNate469
- Scratcher
1000+ posts
what should i learn after scratch?
It takes a With the languages everyone have introduced here, why not learn all of them and become a polyglot programmer? It doesn't hurt being able to code in multiple languages. long time to truly learn a text-based language. For example, I've been learning JavaScript for 2.5 years. I still don't know all of it or its quirks and built-in methods.
- 8to16
- Scratcher
1000+ posts
what should i learn after scratch?
hmm this topic has probably evolved into a full-on discussion
- Maximouse
- Scratcher
1000+ posts
what should i learn after scratch?
I don't think that's a problem – you don't have to be perfect at one language before you start learning another.It takes a With the languages everyone have introduced here, why not learn all of them and become a polyglot programmer? It doesn't hurt being able to code in multiple languages. long time to truly learn a text-based language. For example, I've been learning JavaScript for 2.5 years. I still don't know all of it or its quirks and built-in methods.
- BigNate469
- Scratcher
1000+ posts
what should i learn after scratch?
Yes, but it will take a long time to learn all of the ones mentioned here, and it's probably not best to be actively learning multiple languages at the same time, because you might confuse things like syntax and built-in APIs.I don't think that's a problem – you don't have to be perfect at one language before you start learning another.It takes a With the languages everyone have introduced here, why not learn all of them and become a polyglot programmer? It doesn't hurt being able to code in multiple languages. long time to truly learn a text-based language. For example, I've been learning JavaScript for 2.5 years. I still don't know all of it or its quirks and built-in methods.
- ninjaMAR
- Scratcher
1000+ posts
what should i learn after scratch?
(#28)Easily the best solution here. If you know every programming language, just write polyglot code!
With the languages everyone have introduced here, why not learn all of them and become a polyglot programmer? It doesn't hurt being able to code in multiple languages.
- gilbert_given_189
- Scratcher
1000+ posts
what should i learn after scratch?
The languages people suggested here are really distinct. Observe:Yes, but it will take a long time to learn all of the ones mentioned here, and it's probably not best to be actively learning multiple languages at the same time, because you might confuse things like syntax and built-in APIs.I don't think that's a problem – you don't have to be perfect at one language before you start learning another.It takes a With the languages everyone have introduced here, why not learn all of them and become a polyglot programmer? It doesn't hurt being able to code in multiple languages. long time to truly learn a text-based language. For example, I've been learning JavaScript for 2.5 years. I still don't know all of it or its quirks and built-in methods.
// This is C. #include <stdio.h> char* gifts[12] = { "And a partridge in a pear tree\n\n", "Two turtle doves\n", "Three French hens\n", "Four calling birds\n", "Five gold rings\n", "Six geese a-laying\n", "Seven swans a-swimming\n", "Eight maids a-milking\n", "Nine ladies dancing\n", "Ten lords a-leaping\n", "Eleven pipers piping\n", "Twelve drummers drumming\n", }; char* ordinal[12] = {"first", "second", "third", "fourth", "fifth", "sixth", "seventh", "eighth", "ninth", "tenth", "eleventh", "twelfth"}; int main() { for (int day = 0; day < 12; day++) { printf("On the %s day of Christmas\nMy true love sent to me\n", ordinal[day]); if (day == 0) { printf("A partridge in a pear tree\n\n"); } else { for (int i = day; i >= 0; i--) { printf(gifts[i]); } } } }
// This is Java. public class Main { static String[] gifts = { "And a partridge in a pear tree\n", "Two turtle doves", "Three French hens", "Four calling birds", "Five gold rings", "Six geese a-laying", "Seven swans a-swimming", "Eight maids a-milking", "Nine ladies dancing", "Ten lords a-leaping", "Eleven pipers piping", "Twelve drummers drumming", }; static String[] ordinal = {"first", "second", "third", "fourth", "fifth", "sixth", "seventh", "eighth", "ninth", "tenth", "eleventh", "twelfth"}; public static void main(String[] args) { for (int day = 0; day < 12; day++) { System.out.println(String.format("On the %s day of Christmas\nMy true love sent to me", ordinal[day])); if (day == 0) { System.out.println("A partridge in a pear tree\n"); } else { for (int i = day; i >= 0; i--) { System.out.println(gifts[i]); } } } } }
// This is JavaScript. let gifts = [ "And a partridge in a pear tree\n", "Two turtle doves", "Three French hens", "Four calling birds", "Five gold rings", "Six geese a-laying", "Seven swans a-swimming", "Eight maids a-milking", "Nine ladies dancing", "Ten lords a-leaping", "Eleven pipers piping", "Twelve drummers drumming", ]; let ordinal = ["first", "second", "third", "fourth", "fifth", "sixth", "seventh", "eighth", "ninth", "tenth", "eleventh", "twelfth"]; for (let day = 0; day < 12; day++) { console.log(`On the ${ordinal[day]} day of Christmas\nMy true love sent to me`); if (day == 0) { console.log("A partridge in a pear tree\n"); } else { for (let i = day; i >= 0; i--) { console.log(gifts[i]); } } }
-- This is Lua. local gifts = { "And a partridge in a pear tree\n", "Two turtle doves", "Three French hens", "Four calling birds", "Five gold rings", "Six geese a-laying", "Seven swans a-swimming", "Eight maids a-milking", "Nine ladies dancing", "Ten lords a-leaping", "Eleven pipers piping", "Twelve drummers drumming", } local ordinal = {"first", "second", "third", "fourth", "fifth", "sixth", "seventh", "eighth", "ninth", "tenth", "eleventh", "twelfth"} for day = 1, 12 do print("On the "..ordinal[day].." day of Christmas\nMy true love sent to me") if day == 1 then print("A partridge in a pear tree\n") else for i = day, 1, -1 do print(gifts[i]); end end end
# This is Python. gifts = [ "And a partridge in a pear tree\n", "Two turtle doves", "Three French hens", "Four calling birds", "Five gold rings", "Six geese a-laying", "Seven swans a-swimming", "Eight maids a-milking", "Nine ladies dancing", "Ten lords a-leaping", "Eleven pipers piping", "Twelve drummers drumming", ] ordinal = ["first", "second", "third", "fourth", "fifth", "sixth", "seventh", "eighth", "ninth", "tenth", "eleventh", "twelfth"] for day in range(12): print(f"On the {ordinal[day]} day of Christmas\nMy true love sent to me") if day == 0: print("A partridge in a pear tree\n") else: for i in range(day, -1, -1): print(gifts[i]);
// This is Rust.
const GIFTS: [&str; 12] = [
"And a partridge in a pear tree\n",
"Two turtle doves",
"Three French hens",
"Four calling birds",
"Five gold rings",
"Six geese a-laying",
"Seven swans a-swimming",
"Eight maids a-milking",
"Nine ladies dancing",
"Ten lords a-leaping",
"Eleven pipers piping",
"Twelve drummers drumming",
];
const ORDINAL: [&str; 12] = ["first", "second", "third", "fourth", "fifth", "sixth", "seventh", "eighth", "ninth", "tenth", "eleventh", "twelfth"];
fn main() {
for day in 0..12 {
println!("On the {} day of Christmas\nMy true love sent to me", ORDINAL[day]);
if day == 0 {
println!("A partridge in a pear tree\n");
} else {
for i in (0..day+1).rev() {
println!("{}", GIFTS[i]);
}
}
}
}
Aside from the structure (which I intentionally made to be equal), you couldn't confuse one with another, even if I didn't tell which language the codes are written in.
- PoIygon
- Scratcher
1000+ posts
what should i learn after scratch?
If you ever want to learn any programming language ou can do it the project based way.
Like if you want to learn math, UI and inputs then you can make a calculator app in a language that you want to learn. Then you can get bore advanced from there and add more stuff to that calculator app like history, scientific calculations and more (this is basically how i learned how to do HTML + CSS)
Like if you want to learn math, UI and inputs then you can make a calculator app in a language that you want to learn. Then you can get bore advanced from there and add more stuff to that calculator app like history, scientific calculations and more (this is basically how i learned how to do HTML + CSS)
Last edited by PoIygon (Oct. 7, 2024 02:23:26)
- ideapad-320
- Scratcher
1000+ posts
what should i learn after scratch?
javascript is literally the only best option coming from a full-stack developer that knows 3 scripting languages + html/css
not only is it pretty easy to understand, but you can also do so much stuff with it - websites, desktop apps, game development, AI models, etc.
also, shameless plug, you should try out Obscure, a programming language I created, because it is a scripting language that you can fully learn in less than 10 minutes, and it helps you build your skills creating & understanding large algorithms
https://obscure.glitch.me/
this is not a practical language, it's an esoteric one, but it helps you understand how to build complex projects and algorithms
you can try making different projects challenging yourself to create a larger and more complex one every time, and then when you are basically fluent in Obscure, you can decide what language you want to move to
Also javascript is not easy to understand, it has a weird inconsistent typecasting system.
Websites: You still need HTML and CSS unless you are using those stupid JS-heavy frameworks
Desktops apps: please stop making desktop apps in HTML5. I hate how many “desktop” apps are just web apps.Some companies lie that their “desktop” app is faster, like blue game controller chat app.
Game Development: This works, but you wont get good performance, or you will have to use a game engine to do most of the work.
AI Models: You are using somebody else's C/C++ code.
Out of all the languages I know, I know C++ best. Dynamic type languages confuse me.
I think that scripting languages are bad compared to compiled languages.
Last edited by ideapad-320 (Nov. 2, 2024 21:07:01)
- _thesecondcoming-
- New Scratcher
6 posts
what should i learn after scratch?
warning: this is coming from someone who has only really coded in lua
i would suggest learning love2d or pico-8 if you want to get into gamedev easily, lua's sytax kinda looks like scratch and the way pico-8 and love2d are set up make it quite similar to creating a pen only game in scratch. plus roblox exists too, but it uses a custom variant of lua if im correct. lua does have a few quirks that might make it a bit difficult however, so be ready to be confused occasionally.
tip: the online version of programming in lua that you can get from lua.org is quite out of date, so be sure to go through the current reference manual
i would suggest learning love2d or pico-8 if you want to get into gamedev easily, lua's sytax kinda looks like scratch and the way pico-8 and love2d are set up make it quite similar to creating a pen only game in scratch. plus roblox exists too, but it uses a custom variant of lua if im correct. lua does have a few quirks that might make it a bit difficult however, so be ready to be confused occasionally.
tip: the online version of programming in lua that you can get from lua.org is quite out of date, so be sure to go through the current reference manual
- blubby4
- Scratcher
100+ posts
what should i learn after scratch?
As another person who loves Lua and is warning: this is coming from someone who has only really coded in luatotally not biased, I agree with this.
i would suggest learning love2d or pico-8 if you want to get into gamedev easily, lua's sytax kinda looks like scratch and the way pico-8 and love2d are set up make it quite similar to creating a pen only game in scratch. plus roblox exists too, but it uses a custom variant of lua if im correct. lua does have a few quirks that might make it a bit difficult however, so be ready to be confused occasionally.
tip: the online version of programming in lua that you can get from lua.org is quite out of date, so be sure to go through the current reference manual
Manual: https://lua.org/manual/5.4/
There's also this for advanced programmers (don't read this if you're new to Lua!)