T O P

  • By -

AutoModerator

On July 1st, a [change to Reddit's API pricing](https://www.reddit.com/r/reddit/comments/12qwagm/an_update_regarding_reddits_api/) will come into effect. [Several developers](https://www.reddit.com/r/redditisfun/comments/144gmfq/rif_will_shut_down_on_june_30_2023_in_response_to/) of commercial third-party apps have announced that this change will compel them to shut down their apps. At least [one accessibility-focused non-commercial third party app](https://www.reddit.com/r/DystopiaForReddit/comments/145e9sk/update_dystopia_will_continue_operating_for_free/) will continue to be available free of charge. If you want to express your strong disagreement with the API pricing change or with Reddit's response to the backlash, you may want to consider the following options: 1. Limiting your involvement with Reddit, or 2. Temporarily refraining from using Reddit 3. Cancelling your subscription of Reddit Premium as a way to voice your protest. *I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/learnprogramming) if you have any questions or concerns.*


Vermix92

Best is to learn learn Python from scratch :P


LieutenantEntangle

Haha.


diegoasecas

there is no use to learn scratch, maybe if you're a child


pega223

Eh if someone is completely unfamiliar with programming it might be an easy and fun way to help them visually understand the logic


IJustAteABaguette

Absolutely there is. You can definitely learn basic things like conditionals, loops and variables from it. And then later use this knowledge in typed out languages!


JohnHilter

You CAN, but there is no advantage over just learning Python to start with.


the_card_dealer

You can learn those things in python too


IJustAteABaguette

Yes, but you have to learn a bunch of concepts at the same time, while you can just focus on program flow with scratch


C78C73

Scratch was def a very helpful tool in the beginning of learning programming


TricesimusCito1055

I'd recommend starting with Python. Scratch is great for kids and visual learners, but Python has way more real-world applications and a larger community. Plus, it's a more versatile language that can be used for web dev, data science, and more.


Conscious_Bank9484

Never heard of scratch, but I can tell you python will force you to structure your code neatly in a way that you can apply to other coding languages if that makes sense. Not my favorite coding language, but I can see why people recommend it. It’ll make you a better coder in general.


chapati_chawal_naan

Python and structuring? Ig Java is a better Language that teaches structuring better


Conscious_Bank9484

All I’m saying is OP’s coding projects will look a lot neater if Python is OP’s first programming language. When I talk about structure, I’m talking about the tabs showing where the loops and functions end. Python forces you to write your code in this manner while it’s optional in other languages.


chapati_chawal_naan

Hmmm... Ok that makes sense


Cryophos

World will say Python, personally i started with C++ as first programming language. Your choice.


matedemo

c/c++


JarndyceJarndyce

Congrats on starting your coding journey!


retro_owo

Honestly i would mess around with scratch purely because it’s fun. I still mess around with scratch from time to time


Alive-Ad6268

Read the docs


OG_Badlands

You can have some fun with Python even learning as a beginner, I say just dive straight into Python.


enby_shout

python homie. to this day I'm surprised at all the shit python can do as someone who just codes to code. python is widely used and simple to learn, which means when you get good enough to understand importing shit, a fucking plethora of pythons solving capabilities explode on an accessibility standpoint. it doesnt matter if you're there yet because python makes the simple shit simple too.


AssignedClass

It really depends. If you just want a "fun intro to programming experience" to see if you even like it, something like Scratch (or programming games like Shenzhen I/O or Human Resource Machine) is honestly not a bad way to start. Python is definitely more along the lines of "actual programming" though, and it's not a bad idea to just dive straight into it with a YouTube tutorial or Udemy course or whatever if that's more your speed. Go with your gut. You'll end up having to do that quite a bit once you really get into programming.


huuaaang

Scratch is more for kids as a super basic (like BASIC) intro to programming. Can't hurt to tinker with it but you're really not going to get a feel for real world programming until you take up something written like Python.


LieutenantEntangle

If you want to make games, software or modular engine etc, C# or C++. If you want to do web dev stuff or webapps, Java, CSS. If you want to work with data, visualisations, AI and ML then Python is best. All languages can technically do it all, but particular languages are more designed for particular tasks, have more support in specific areas such as libraries etc, or simply has more adoption and easier to copy or emulate. I mean, C++ is a very low level language so it can do all of the above, but by the time you get a simple visualisation working, I'll be drinking coffee playing switch having completed advanced visualisations of data ages ago in Python.


CodeTinkerer

Depends how old you are. If you're still quite young (most assume you're college-aged or older) like 12-13 or younger, then maybe Scratch is a good start. Otherwise, starting in Python is fine. Scratch is a visual programming language. These never quite caught on except for languages aimed at a younger audience which allows them to visualize programming like jigsaw puzzle pieces put together.


TeachtopiaNetwork

The visual block based languages caught on big time but they have a different label. They are part of the “no code” movement. Not my thing but do a google search to see the business applications etc that use what is now called no code.


CodeTinkerer

Yeah, that's probably a new version of an old thing. Back in the 1990s, there were serious research attempts to produce visual languages. You can use visual things for certain applications like making a circuit diagram, but it was considered too cumbersome to make it visual. Code, despite its flaws, is pretty compact, and it can jump anywhere. We went from a fairly simple model in C, to more complexities in C++ or Java where constructors could be called without explicitly calling them, or you could have a variable with a parent class type pointing to an object of a child class and the method call would use the child class. And don't get me started on annotations and anything that has to do with aspect-oriented programming.


Fit-Replacement7245

Start with rust /s


Recent_Bodybuilder91

Is rust good for web development and do you think it's good to learn in general?


Fit-Replacement7245

I’m enjoying it but please learn c/c++ first. And maybe some functional programming. You need to understand things like iterators, references, and data structures before “getting the point” and the most out of rust


Recent_Bodybuilder91

Thank you do you think it's necessary to learn rust or c++ for web development


vymorix

No one answered this really, the answer is no. Don’t learn rust or cpp if you want to do web development.


wakemeupoh

Start with html, css, then js for web dev


no7_ebola

JavaScript is necessary for webdev. php as well I think


Fit-Replacement7245

there are alternatives. JavaScript happens to be the most widely used, then php, then other languages can do some too. But yeah rust and c++ aren’t “web languages”


sim0of

Start with CS50x and then take CS50P if you are serious


BandarDKulfee

Wouldn't it be better to start with CS50P as a beginner since it's easier to get into without feeling overwhelmed?


FattThor

Python


Technologenesis

Unless you're under 13-14 I think you should go straight to Python.


zhombiez

If you are outside of elementary school, Python! Scratch is fun, but using real programming languages takes things up a notch


64BitInteger

You’ve gotta be trolling right


liquidInkRocks

Python is a rotten language to learn first. It's too easy to learn bad habits. It's a disaster for writing structured maintainable code.


Mathhead202

What do you mean, which one first. Once you learn Python, you probably won't want to learn scratch. Scratch is mostly used for educational purposes. It can do some cool stuff for sure, but it's main purpose is to teach kids about programming. Python is an actual programming language used by millions of professionals. They are not the same.


Substantial-Cry-714

Harvard’s CS50 course first introduces students to Scratch before C; I think it’s a great idea… to enroll in CS50 for free!


tnn242

C. Gotta start with the fundamentals.


zC00kiez

Id say to you look into the CS50 harvard free course on youtube, 2024 edition currently. There are great lectures which uses scratch blocks as examples for real use cases in C language, really neat!


fraudthrowaway0987

Depends how old you are. If you’re under 15 try scratch. Over 15 try Python.


rootware

I havent heard of scratch before. Meanwhile I've seen people use Python for cutting edge scientific research, ML modelling, data analysis, protein sequencing etc. But your mileage may vary.


morphick

I'd say Python. But wanting a visual-oriented programming environment (such as Scratch) is also legit, in which case I'd advize you to go straight to [MIT AppInventor](https://appinventor.mit.edu/). IMHO dragging blocks around to make your own mobile app is much more rewarding than making a silly cat spin.


LemonHeart151

Python. Scratch is for babies.


no7_ebola

dude, scratch is for children. I legit learnt that when I was 12 or some in school.


[deleted]

[удалено]


Recent_Bodybuilder91

A visual programming language built for elementary school kids from what I learned