Stories
Slash Boxes
Comments

SoylentNews is people

posted by Fnord666 on Wednesday May 01 2019, @03:53PM   Printer-friendly
from the but-microsoft! dept.

Submitted via IRC for Antidisestablishment

Programming language Python's popular extension for Visual Studio Code revamped

While Python has become the go-to language for data scientists and machine-learning applications, VS Code – Microsoft's lightweight code editor that works on Windows, macOS, and Linux – has become somewhat of a hit with developers, even within Google.

In 2016, a year after Microsoft open-sourced VS Code it had 500,000 developers using it. By November 2017, VS Code had 2.6 million developers using it each month, representing year-on-year growth of 160 percent.

In December 2018, Microsoft chief marketing officer Chris Capossela told ZDNet's Mary Jo Foley and fellow Microsoft watcher Paul Thurrott that the "majority of Google developers are using it now".

The open-source Microsoft editor now has 4.5 million users and was ranked the most popular developer environment for two years running in Stack Overflow's global developer survey.

Meanwhile, Python has seen a huge and sustained rise in popularity among developers, who now ask more questions each month on Stack Overflow about it than JavaScript, which historically has attracted the most questions.

The updated Python extension fixes 84 issues and now includes a Variable Explore and a Data Viewer within the Python Interactive window. The new features were "highly requested" from users, according to Microsoft, and will allow developers and data scientists to view, inspect and filter variables in their apps.

So fellow Soylentils, has anyone tried this combination as a Python IDE and if so, what did you think?


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 0, Troll) by sshelton76 on Wednesday May 01 2019, @04:03PM (15 children)

    by sshelton76 (7978) on Wednesday May 01 2019, @04:03PM (#837335)

    It absolutely blows my mind that Python has become the new JS (piece of crap to work with, lots of unexpected behaviors and side effects etc)
    Meanwhile JS has morphed into a really good language if you need to do cross platform work.

    Golang is still my GOTO language for most things though, as long as user interaction is limited to the command line. Can't beat it for speed, flexibility and security.

    Starting Score:    1  point
    Moderation   -1  
       Troll=2, Informative=1, Total=3
    Extra 'Troll' Modifier   0  

    Total Score:   0  
  • (Score: 2) by PiMuNu on Wednesday May 01 2019, @04:22PM (9 children)

    by PiMuNu (3823) on Wednesday May 01 2019, @04:22PM (#837347)

    > lots of unexpected behaviors and side effects etc

    Like what?

    • (Score: 2, Funny) by c0lo on Wednesday May 01 2019, @05:55PM (1 child)

      by c0lo (156) Subscriber Badge on Wednesday May 01 2019, @05:55PM (#837435) Journal

      Like wearing out the TAB key twice as fast than for other languages (grin)

      --
      https://www.youtube.com/watch?v=aoFiw2jMy-0 https://soylentnews.org/~MichaelDavidCrawford
      • (Score: 3, Informative) by DannyB on Wednesday May 01 2019, @06:13PM

        by DannyB (5839) Subscriber Badge on Wednesday May 01 2019, @06:13PM (#837449) Journal

        I can't speak for Python, but doesn't just about any text editor, let alone IDE auto indent the next line at the same level as this line. Thus you only hit one extra tab to begin a new intent level, or one backspace to back out an indent level.

        Don't some Python programmers insist on using two spaces and no tabs?

        --
        The lower I set my standards the more accomplishments I have.
    • (Score: 2) by ikanreed on Wednesday May 01 2019, @06:00PM (3 children)

      by ikanreed (3164) Subscriber Badge on Wednesday May 01 2019, @06:00PM (#837440) Journal

      He expects his code to not suck ass, but then it does for some reason. Must be the compiler's fault.

      • (Score: 0) by Anonymous Coward on Thursday May 02 2019, @12:40AM (2 children)

        by Anonymous Coward on Thursday May 02 2019, @12:40AM (#837615)

        > Must be the compiler's fault.

        ??? Python is interpreted! (or was that part of your implied /sarc?)

        • (Score: 2) by DannyB on Thursday May 02 2019, @02:22PM

          by DannyB (5839) Subscriber Badge on Thursday May 02 2019, @02:22PM (#837874) Journal

          It is a matter of time. All code will be compiled even if it gives the appearance of being interpreted.

          We simply have so much abundance of memory, cpu and compiler technology that it is inevitable.

          --
          The lower I set my standards the more accomplishments I have.
        • (Score: 2) by ikanreed on Thursday May 02 2019, @03:07PM

          by ikanreed (3164) Subscriber Badge on Thursday May 02 2019, @03:07PM (#837908) Journal

          "Blaming the compiler" is just a cliche bad programmer thing to do.

    • (Score: 1) by sshelton76 on Thursday May 02 2019, @11:28AM (2 children)

      by sshelton76 (7978) on Thursday May 02 2019, @11:28AM (#837798)

      Well just try running a python script in an environment it wasn't written on, such as going from 2.x to 3.x or missing some dep that was declared somewhere deep, deep down the rabbit hole and is now deprecated and/or gone.

      Furthermore Python code is just hard to wrangle unless you're working with python every single day and have become accustomed to the quirks. Whoever decided that whitespace should be code needs to be hung by their toenails until the blood returns to their brain.

      I started my professional career in C where I mostly was focused on taking existing single threaded apps and making them scale.
      I have skills in Perl, PHP and Java. I've used Python, but I try to avoid it if I can. I have seen the language go downhill from feature bloat. I would still rather maintain a poorly written python app than a well written Perl app, but maybe that's just me.

      JS has improved to the point where it's a reasonably competent language for many, many things especially if you need a quick and dirty UI. While you CAN import the entirety of npm and webpackify all of github, the fact is you don't have to in most cases.

      What I like most about JS is that over the years they have taken the concerns of users into account. Compare the situation we have now with async/await vs callbacks or promises and you can see that there have been major improvements this past decade. Furthermore performance improvements under the hood mean that code written a decade ago still runs and in many cases runs much faster than it did back in the day. Example JQuery. Try running a 10 year old python app and see how that goes for you.

      I still wouldn't use JS on the backend. Maybe it's just me, I've done my share of nodejs servers and have found golang to be superior in every way.

      • (Score: 2) by PiMuNu on Thursday May 02 2019, @12:27PM (1 child)

        by PiMuNu (3823) on Thursday May 02 2019, @12:27PM (#837815)

        Thanks for the reply. It's interesting.

        > Well just try running a python script in an environment it wasn't written on

        I don't wrangle pure C so much and I never touched javascript but ever tried compiling with latest g++? Good luck.

        > missing some dep that was declared somewhere deep, deep down the rabbit hole

        How is this not a problem in any language? Dependencies are, well, dependencies. At least in python you get a reasonable import error. What about C - ever tried debugging linker errors? Good luck!

        ==

        I note that JS misses ability to interface neatly with C code, which is a "killer app" for me:

        https://stackoverflow.com/questions/14973224/javascript-communicate-with-c [stackoverflow.com]

        I do scientific computing stuff; the ability to build a fast underlying library and then make a scriptable interface is super-powerful. In javascript I guess you need to interface via a web service or something?

        • (Score: 0) by sshelton76 on Thursday May 02 2019, @12:45PM

          by sshelton76 (7978) on Thursday May 02 2019, @12:45PM (#837822)

          No, I wouldn't use a hammer to drive in a screw.

          You want a fast, powerful, easy to use language intended for scripting your C app, use Lua.
          https://www.lua.org/ [lua.org]
          https://www.lua.org/pil/24.html [lua.org]

          It blows python away in every use case I've ever seen.
          Unless you specifically NEED something python only like numpy, there really isn't a good reason to use python at all for new projects.

  • (Score: 2) by mhajicek on Wednesday May 01 2019, @05:17PM

    by mhajicek (51) on Wednesday May 01 2019, @05:17PM (#837390)

    I program in FANUC MACRO B.

    --
    The spacelike surfaces of time foliations can have a cusp at the surface of discontinuity. - P. Hajicek
  • (Score: 2) by RamiK on Wednesday May 01 2019, @07:11PM (3 children)

    by RamiK (1813) on Wednesday May 01 2019, @07:11PM (#837481)

    It absolutely blows my mind that Python has become the new JS (piece of crap to work with, lots of unexpected behaviors and side effects etc)
    Meanwhile JS has morphed into a really good language if you need to do cross platform work.

    I don't know about JS getting good since whenever I try getting into it I get a sudden urge to gauge my eyes but python definitely got worse over the years due to the feature bloat.

    Golang is still my GOTO language for most things though

    I have to agree. Golang is just very easy to get back into when editing old code / writing new stuff / gluing. Every other language I used over the years lost itself to layers of dependencies and abstractions regardless of how good its foundations were. Hopefully it won't happen with Go2.

    --
    compiling...
    • (Score: 1) by sshelton76 on Thursday May 02 2019, @01:22PM (2 children)

      by sshelton76 (7978) on Thursday May 02 2019, @01:22PM (#837840)

      Well if you look at barebones vanilla JS from years ago and compare it to modern versions, it is much easier to work with.
      Classes, async/await, big arrow functions, proper variable scoping with let, a proper foreach style construction that you can break out of.
      There's been a lot of improvements that just make the JS of today a lot easier to work with than the JS of yore.

      I'm not saying it's the best language ever. I'm just saying it amazes me that it has gotten so much better over the years while python appears to be getting objectively worse.

      The performance of python has taken a dip. There seems to compatibility issues every time I try to rely on someone else's python script to do anything and don't get me started on the mess that became of stackless. https://en.wikipedia.org/wiki/Stackless_Python [wikipedia.org]

      I'm sure there are people who will disagree with me. I also am very aware that there are a lot of system level apps written in it, and appearantly netflix swears by it too...
      https://www.zdnet.com/article/netflix-python-programming-language-is-behind-every-film-you-stream/ [zdnet.com]

      However, from my perspective I have yet to find a use case where Python is the hands down best choice for the job. There seem to always be better, more performant options and the only reason I would use Python at work is if I had a lot of programmers who were proficient with Python and couldn't adapt to better tech easily. Which is what I think Netflix is actually saying in the article I linked.

      • (Score: 2) by RamiK on Thursday May 02 2019, @03:43PM (1 child)

        by RamiK (1813) on Thursday May 02 2019, @03:43PM (#837923)

        Classes, async/await, big arrow functions, proper variable scoping with let, a proper foreach style construction that you can break out of.

        You're right contemporary JS compares favorably to its previous self when considering those. But even to python new and old, it's really awful due to the ad-hoc nature of how those features and new syntax were added on as the language grow.

        However, from my perspective I have yet to find a use case where Python is the hands down best choice for the job.

        I think python's charm was that it was a good enough solution for almost everything right about until it started accumulating more and more features and paradigms. Now you have a language that takes twice as long to learn and use and different fields use different feature-sets like in C++ (only not nearly as bad). So, you can never just start doing what you want to do and instead have to effectively learn frameworks and relearn language features since they only come up in limited use cases.

        That is, it was never the best use case for anything. But it was time efficient and easy to prototype in. Now it's got quite cumbersome.

        Best analogy is Swiss Army knives: The simple ones are good to have around for odd jobs. They're rarely compare favorably to dedicated tools. But when you need to unscrew something or what not they're there in your wallet/pocket. But those new huge combo knives are horrible! The grip is uncomfortable for almost all the tools. They're too heavy and bulky to keep in a pocket even if you're wearing cargo pants. The individual tools are just too small and fragile... A mess. Of course, in this context JS would be those tiny sporks that you have to grab the knife end to use the fork and modern JS would be someone adding in a foldable third T junction for you right down the middle of the spork so now you can grab that instead but the join is shit so it keeps loosening up and spilling soup all over you... Go btw, would be one of those brand tool sets that has almost everything you need except the odd specialist tool. And I guess for completeness C is a lathe letting you build whichever horror you'd like while C++ is a cheap bench drill converted into a CNC mill that could on paper do anything but generally ends up broken.

        --
        compiling...
        • (Score: 1) by sshelton76 on Thursday May 02 2019, @03:52PM

          by sshelton76 (7978) on Thursday May 02 2019, @03:52PM (#837931)

          Excellent reply and your assessment of C++ matches my own.
          C makes it easy to shoot yourself in the foot.
          C++ loads the gun and pulls the trigger for you.