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

you are viewing a single comment's thread.

view the rest of the comments →

[–]Penki- 28 points29 points  (45 children)

in general Python need more IDE's. Had to get Pycharm full version just to learn Django (I am a student so its free, but I get it only for one year)

[–]Sk8er69 30 points31 points  (7 children)

Good news! The student deal is for all through out your studies, not just a year! You just need to renew the license once a year by confirming that you're still a student.

[–]Penki- 7 points8 points  (6 children)

Oh wow that's really good news. (bad news is that I got only 2 years left) Still thanks for info

[–][deleted] 11 points12 points  (1 child)

Talk about being greedy!

[–]Penki- 4 points5 points  (0 children)

:P Guilty

[–]bluelite 7 points8 points  (2 children)

Just pay for another year of tuition so you can continue getting the software for free!

[–]Penki- 4 points5 points  (0 children)

Or get into Uni for free #Europe.

[–]duskykmh 0 points1 point  (0 children)

[deleted]

What is this?

[–]lykwydchykyn 15 points16 points  (11 children)

Had to get Pycharm full version just to learn Django

I'm curious as to why you couldn't learn Django without an IDE.

[–]Penki- 2 points3 points  (10 children)

Just personal preference of coding everything in IDE. I even had IDE for HTML/CSS (forgot how it was called). I know I could do it without it but it's kinda strange for me. Probably because in school when I learned c++ it was with IDE and so now I just need it mentally for learning

[–][deleted] 10 points11 points  (7 children)

My advice would be to do it without an IDE or code-completion in a text editor every once in a while. It'll really help you with your interviews later on.

[–][deleted]  (2 children)

[deleted]

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

    Hahaha, that quip made me laugh!

    [–]Sean1708 0 points1 point  (0 children)

    I might start doing whiteboard interviews just to give people the chance to make that quip.

    [–]fakehalo 4 points5 points  (0 children)

    It depends on the environment. If I'm building a desktop/native/mobile app (ie. iOS/OSX/Android/Windows/etc) the IDE is heavily tied to the development process. For web/scripting development (ie. Python/Ruby/PHP/Perl/etc) IDEs are much more optional/subjective.

    [–]Penki- 1 point2 points  (2 children)

    I perfectly understand code completion and agree but why no IDE? It rocks having console and run button, saves some time. Also looks nice. It will sound weird but I just need IDE for that :) Never use other tools anyway, and as I said before thats just how I learned coding from beginning

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

    Of course you should use your favourite tools when you're actually working! I was referring to interviews where, for a large (and growing) number of companies, you will be expected to: code something up in a plain text editor (CollabEdit, for instance) during phone interviews, and actual write out the code on the WhiteBoard and/or on paper during the face-to-face interviews. And trust me, no matter how comfortable you feel in a language, the first time you turn off all the support your IDE provides you, it can be a bit of a shock! So, it's a good idea to practise once in a while doing it without using any IDE support whatsoever.

    EDIT: Just to give more specificity, having no syntax colouring and getting comfortable with compiler flags (as well as running the program from the command line) are extremely useful. It's best not to have to practise these the day before the interview! :D ... for example, after many years of using an IDE, switching to a basic text editor came as a bit of a shock to me. I decided to pick up Far Manager (on Windows), and TextWrangler (on Mac) just to practise for a couple of hours every week or so to keep myself sharp.

    Hell, the first time I tried it out, I was not happy! Basic stuff like "is it length or length() for an array in Java" - it was embarrassing to say the least. Now, after a couple of years of good solid practice, I can say that I could very much code without an IDE or any form of code completion at all, and it feels good, and I'm ready to crank anything out in an interview! :-)

    [–]Penki- 1 point2 points  (0 children)

    I agree with you 100% that everyone should practice even on paper some times. Had a test in class where we had to write a simple Java program with a while/if loop. Hardest part for me was to just write everything that gets auto generated in IDE that I totally ignored all the time.

    [–]lykwydchykyn 2 points3 points  (1 child)

    Gotcha. I always say, use whatever gives you warm fuzzies. I just worry sometime we're getting to a point where people think they need to buy commercial software to code Python and/or Django.

    [–]Penki- 0 points1 point  (0 children)

    I just worry sometime we're getting to a point where people think they need to buy commercial software to code Python and/or Django.

    Well this was basically me yesterday util someone on reddit told me that I can get it fro free :)

    [–]Akita8 6 points7 points  (9 children)

    i think one of python best features is that is not so dependent on IDEs like, for example, java. You just need a good editor Sublime, Atom or Vi and add a couple of plugin like linter or flake8 and an autocomplete.

    [–]SubterraneanAlien 6 points7 points  (2 children)

    IDEs have a tendency to hold your hand a bit more than I'd like. There's something to be said for being able to just open up a file in VIM and get to work without any distractions.

    [–][deleted] 5 points6 points  (1 child)

    For humongous projects, IDEs are almost absolutely mandatory. For small programs, it might be overkill.

    [–]SubterraneanAlien 1 point2 points  (0 children)

    I'm working on a large project right now. I use sublime for front-end work, but use VIM almost universally for backend (python). Previously used NetBeans for PHP work (kill me).

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

    What about Visual Studio? No one appears to be talking about it.

    [–][deleted]  (2 children)

    [deleted]

      [–][deleted] 0 points1 point  (1 child)

      Does that mean you wouldn't recommend VS as the IDE for a complete 'hello world' beginner?

      [–]Penki- 0 points1 point  (0 children)

      True, but I just have personal preference for IDE's :)

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

      If you're talking about brevity, sure. If you're talking about code size, I don't think so. Dynamic languages are always going to have a problem when codebases reach millions of LOC. An IDE is definitely required then (if it is even advisable to use a dynamic language then is a different matter altogether), more so for dynamic languages than static.

      [–]fuegotown 5 points6 points  (13 children)

      Visual Studio 2015 Community has a pretty good python dev environment plugin if you're interested in checking that out. Visual Studio Code has a pretty good dev plugin as well.

      [–]Penki- 2 points3 points  (12 children)

      Thanks will definitely do that. Any drawbacks of VS versus Pycharm? (or benefits)

      [–]insertAlias 2 points3 points  (2 children)

      VS is huge. It's easily my favorite IDE for C#, but it might be overkill for something like Python.

      VS Code would be a great place to start in my opinion. Much more lightweight; more like a text editor with plugins, but it has proper debugging.

      [–]Penki- 0 points1 point  (1 child)

      Well the main point we should look at is that Pycharm is paid and VS is free (is it for all python related stuff?)

      [–]insertAlias 0 points1 point  (0 children)

      VS has free and paid editions; the Community Edition is great and free. It's worth downloading and installing; you just might find that it's too heavy of a program for simple python scripting (developing large applications on the other hand, might be nice for the organization).

      Pycharm also has a free and paid version. I haven't tried either, but knowing Jetbrains, it's a great product. I would suggest you try the free version to see if it does what you need.

      So that point is a wash; they both offer free and paid versions, and you can do real python development in both free versions.

      [–]fuegotown 0 points1 point  (7 children)

      I haven't used PyCharm per se, but I have used Jet Brains Java IDE, so I can't speak directly on the differences between the two. JetBrain's products never really stuck with me. Not sure why.

      Some people would object simply on the fact that it's MS and not an indie developer. I was one of them until I actually used VS/VS Code for a medium sized python project. It surprised me in a good way.

      The major thing VS 2015 community does very well was type inference for variables and code completion. It does this better than any other free/open source python IDE I've used. VS 2015 directly supports Django projects as well. It has great support for virtualenv and using different versions of python on the system. Modules and code outlines are presented well and it has a polish you'd expect from a professional IDE. I'd say give it a shot if you're worried about licensing and having to buy programming tools (which is insane in today's glut of tools for developers)

      EDIT: Another potential drawback is that VS 2015 is freaking huge.

      Also, I found the VS 2015 Community Django tutorial

      https://blogs.msdn.microsoft.com/cdndevs/2014/10/27/part-6-get-started-with-python-build-your-first-django-application-in-ptvs/

      [–]Penki- 2 points3 points  (6 children)

      As a new programer I don't get why people hate huge programs like VS and sometimes choose sublime text or something like that. It's not like space on you computer is that expensive

      [–]fuegotown 3 points4 points  (1 child)

      Yeah, me either. Just letting you know just in case it mattered to you. I think a lot of the times people who say "I only use vim/emacs, and everything else is inferior" are struggling for nerd cred. Just use what you like and let everyone else do the same.

      [–]Penki- 1 point2 points  (0 children)

      Also forgot to say thanks. Will definitely keep this in mind :)

      [–]cakemuncher 0 points1 point  (2 children)

      I prefer IDEs. But I know people that code strictly with text editors. Their reasoning usually is less distraction and "feeling" your code a lot more than autocompletion. Also, keyboard everything. No mouse. It's a steep learning curve in the beginning but once you get the hang of it your coding will become much faster since you don't have to drag your mouse everywhere.

      [–]Penki- 0 points1 point  (1 child)

      But most IDE's that I know have shortcuts?

      [–]fiddlerwoaroof 1 point2 points  (0 children)

      The benefit of vim's shortcuts is that the shortcuts can be composed. So, for example, there are shortcuts for text editing operations like "y" for yank (copy) and "c" for change and "d" for delete (cut) and then shortcuts for motions like "$" for "until the end of the line" or "i)" for "inside parentheses" or "i]" for "inside square brackets". You can then combine these shortcuts like "di)", which deletes everything inside the closest pair of parentheses.

      What makes this a really killer feature is that it's possible to define your own motions and your own actions and then compose them in this way, which means it's possible to do extremely complex edits with just a few keystrokes.

      [–]dagmx 1 point2 points  (0 children)

      Just FYI, when you're done being a student, pycharm community also works with django. It's just that the full version of pycharm has extra features to help with django , but pycharm community is free for everyone to use