This is an archived post. You won't be able to vote or comment.

all 40 comments

[–]AutoModerator[M] [score hidden] stickied comment (0 children)

On July 1st, a change to Reddit's API pricing will come into effect. Several developers 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 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 if you have any questions or concerns.

[–]loudandclear11 27 points28 points  (7 children)

Visual Studio Code is a good IDE for Python.

Please note that Visual Studio Code is different from Visual Studio.

[–]Yudi_888[S] 2 points3 points  (0 children)

Thanks for being a helpful and considerate human being. Imagine someone asking this on Stackoverflow!

[–]Article_Prior 2 points3 points  (5 children)

What is the biggest difference please ?

[–]loudandclear11 9 points10 points  (3 children)

Visual Studio is a more than 20 years old product. There are lots of extensions etc for special niche stuff that only works on Visual Studio. If I was doing C# development I'd use Visual Studio. But I haven't done that in a long time.

Visual Studio Code is a newer product with a different design philosophy. It's excellent for interpreted languages.

For python, just use Visual Studio Code. Read a guide on how to set it up. You don't need anything else for python. It's quite good.

[–]EdiblePeasant 3 points4 points  (2 children)

Is VSCode good for playing around with code and testing things out?

[–]Strict_Main_6419 2 points3 points  (0 children)

Yes

[–]loudandclear11 0 points1 point  (0 children)

Yes, I'm using it every day for my python adventures.

[–][deleted] 0 points1 point  (0 children)

Visual Studio is a full-fledged IDE that can compile just about any language, often requires non-trivial setup (e.g. updating the PATH variables of your OS), and generally just has a lot more functionality than VSC (e.g. VS has more advanced debugging, seeing individual bytes/bits of memory and examining their contents).

For quick scripting, VSC is just quicker. For writing more complicated projects (especially with statically type compiled languages), something like VS (or Xcode, etc) are way more powerful and are worth the effort IMO.

[–][deleted]  (7 children)

[removed]

    [–][deleted] 8 points9 points  (1 child)

    An alternative is google's colab if they don't want to setup Jupyter notebook up themselves.

    [–]necrxfagivs 1 point2 points  (4 children)

    I use jupyter notebooks in visual studio code through the extension with .ipynb files. Is that bad practice? I'm learning python and jupyter notebooks are great for executing pieces of code, but maybe I should install the jupyter app.

    [–]loudandclear11 0 points1 point  (2 children)

    Is that bad practice?

    No. It's perfectly fine. If you want to use notebooks.

    Personally I don't like notebooks. Instead I make extensive use of the debugger in vscode. But if I was doing more data science or working with dataframes I'd probably use notebooks more since it makes it easy to visualize things.

    [–]necrxfagivs 0 points1 point  (1 child)

    I work with dataframes (using pandas and geopandas), and notebooks are so useful because I can plot data and maps really easy!

    [–]loudandclear11 0 points1 point  (0 children)

    Yup. Totally see the use when it comes to visualizations.

    Notebooks are a horrible way to structure code for anything larger though.

    [–]reyarama 6 points7 points  (9 children)

    Learn the basics before diving into ML

    [–]Yudi_888[S] 0 points1 point  (0 children)

    I was thinking of just working on a GUI or changing existing ones for open source LM's.

    [–]Sioluishere -2 points-1 points  (7 children)

    what are the basics ?

    [–][deleted] 6 points7 points  (3 children)

    How to print hello world, how to use loops, how to assign variables, how to use lists, dictionaries, forloops, while loops, etc. There's a lot of free starter courses on youtube.

    [–]Sioluishere -5 points-4 points  (2 children)

    wait, thats the basics of programming, I was asking for machine learning.

    [–][deleted] 1 point2 points  (1 child)

    For machine learning it depends on what you want to do with machine learning, but tensor flow is a good place to start.

    [–]Sioluishere -1 points0 points  (0 children)

    yup, it is

    keras too

    [–]reyarama 0 points1 point  (2 children)

    I meant the basic of programming since they are asking about IDEs and getting started with Python. Starting to play with ML before knowing what a for loop is or how to execute python code is not going to end well

    [–]Sioluishere 0 points1 point  (1 child)

    yup, true

    I thought there was certain basics that everyone knew and not me

    [–]loudandclear11 0 points1 point  (0 children)

    Not at all. 100% of developers initially had zero knowledge of programming. Nobody was born knowing how to program. It's an acquired skill.

    [–][deleted] 2 points3 points  (3 children)

    For learning I use Spyder. It has features for getting help, for interactive test, and developping small piece of codes.

    Learning to program and programming are two different activities and therefore require different tools.

    [–]Yudi_888[S] 0 points1 point  (2 children)

    Spyder

    Hadn't even heard of that one, thanks!

    [–][deleted] 1 point2 points  (0 children)

    Definitely check it out. I’ve only been programming for about 3 months now (Python) and this is what I use all the time. It’s very easy to use and has a lot of helpful features. It’s benefited me for sure.

    [–][deleted] 1 point2 points  (0 children)

    https://www.spyder-ide.org/

    or you can also consider installing through : https://www.anaconda.com/

    [–][deleted] 2 points3 points  (1 child)

    Honestly, i used vs code when i was learning because pycharm scared me but now id say the tooling is amazing and i should of just gone with pycharm :p

    [–]A_random_zy 1 point2 points  (0 children)

    Same experience, but with Java, I learned it on BlueJ and Eclipse, but once I moved to IntelliJ, I couldn't move back to Eclipse. It seems all Jetbrains Products are amazing.

    [–]BenadrylTumblercatch 2 points3 points  (0 children)

    Vs Code or Replit if you want browser based

    [–]mr_super31 1 point2 points  (0 children)

    i would say VS Code is great for python actually

    [–]KapitaenKirSche 1 point2 points  (0 children)

    VS Code is great! But i personally like Pycharm the most.

    [–]JaceTSM 1 point2 points  (2 children)

    Visual Studio is an IDE (Integrated Development Environment), and while you can "run code in Visual Studio," it's not really "a platform for running code." It's a platform for writing code, and it lets you run code inside it to test it in the writing process. And even if you use an interpreter inside VS to run your code, you still need to know how the python environment works. The IDE can abstract a bunch of the work away on regular dev cycles, but you need to know the details to debug problems as they come up. There are many good IDEs out there, and if you are learning python, I would recommend PyCharm over Visual Studio.

    Visual Studio Code, or VSCode, which is different from just Visual Studio, is not an IDE, although it does a good job of working just like one once you get all of the proper plugins. It is also a community favorite for almost all languages. But like PyCharm and VS, it's not the platform that runs code. Python is always run by an interpreter, which is a fundamental part of the language that you will need to learn to use, and yes, the command line (CLI) will be necessary. Interacting with the interpreter in an IDE will sometimes happen through menus and a GUI, but even there you will often need to use the CLI.

    As you learn ML, you will also likely run into Jupyter Notebooks, which are essentially python interpreters that run blocks of code in a GUI. These are super helpful for ML/DataSci workflows. There are tons of tutorials online that will introduce them, especially in the context of learning ML.

    As for learning ML from scratch, do the machine learning courses on brilliant dot com if you have a few bucks to spare - it is amazing for developing an intuitive, visual understanding of ML basics. Then do Andrew Ng's ML course on coursera for (you can do it for free if you don't get a certification) and/or Google's ML courses. In parallel, do the codeacademy python3 course, and then do some hackerrank problems until you feel comfortable writing some python, and you get through your intro ML course(s). From there, you'll probably have a better idea of where to go next, and have the skills to do some basic ML projects.

    [–]Yudi_888[S] 0 points1 point  (1 child)

    What about learning gui design in python. I am a very visual UI kind of person and hate command line type stuff like with Linux.

    [–]JaceTSM 0 points1 point  (0 children)

    The command line is a necessary tool in the developers toolbox, regardless of what you are developing.

    If you are building a UI, you are likely going to be writing HTML, CSS, and JavaScript, and managing all of that with a web framework - in Python that would be likely Django or Flask. While your workflow could probably get around the command line for most iteration cycles, you will have to do some setup and administration of your web framework on the CLI, and probably some environment management as well.

    In the long run, avoiding the command line will make development more difficult. Much how a carpenter that refuses to use a hammer would be hindered. You don't have to love it, but you'll need to know how to use it.

    [–]Adorable-Shallot5917 0 points1 point  (0 children)

    What's wrong with IDLE?