Go | New | Find | Notify | Tools | Reply |
W07VH5 |
VS Code is a good bit more efficient unless you’re doing single file programs. | |||
|
Member |
Text editors are great for editing text. Well, duh. But someone who has not gotten at least somewhat fluent in using vi/vim or emacs probably can't imagine the EXTENT to which that is true. A decent user of vi/vim or emacs can edit text so much faster than with a mouse-and-typing editor that it is genuinely startling. I'm personally on the team vim side of the editor holy war. I used both long enough to get OK with them and just liked vim better. Now, with that said, vi/vim and emacs both have pretty steep learning curves, and their text editing functions don't really help you learn to program (yes, yes, vim and emacs users, I will get to your objection to this in a minute). I think a simple IDE (integrated development environment - basically a program that you write your code in and has features for compiling, running, testing, etc.) makes more sense when you are just starting out. IDEs have something like "spellcheck for code." If you try to use a function or variable or something and get the name wrong, the IDE will notice there's no function or variable with that name and flag it. If you try to use a function with the wrong number of arguments, the editor will flag it. When you start typing a function name, there's something like "autocomplete" that shows you possible functions and what arguments they are supposed to take. All of that happens at the code editing stage, not at the stage of compiling or running a program and getting errors. They'll flag if you never close a parenthesis. All kinds of stuff. That sort of thing won't catch every bug, but they can be a big help. And then if you want to use vi/vim or emacs, many IDEs have vi/vim and emacs emulation modes for when you are actually editing source code files in the IDE. Now, for the vi/vim and emacs users' objection: yes, by adding a bunch of extensions, you can make vim or emacs do all that stuff, too. You can turn vim or emacs into a pretty full-featured IDE all on its own. But it's kind of a pain in the ass to get set up that way and it turns the already steep learning curve into a learning brick wall. I just don't think it's a good idea for someone just getting started with programming who isn't devoting all their time to it.
There are actually ways to get vim and emacs to handle large projects pretty well, but as above, the learning curve to do that in vim or emacs is steep and probably not worth it these days. Even for using vim or emacs, I think vim or emacs emulation in an IDE usually makes more sense than turning vim or emacs into an IDE. (I use several different IDEs for different languages and generally use vim emulation in them.) I think VS code is a good choice for people just getting started. It's lightweight and has a lot of the immediate useful features without getting bogged down with all the complication and options of a big, professional IDE. | |||
|
W07VH5 |
There's a vim plugin for VS Code https://marketplace.visualstud...emName=vscodevim.vim VS Code had come a long way over the past year. You're right about the leaning curve. When I need to edit a couple lines on a Ubuntu box, I use nano. It's easier to remember all the shortcuts. Oh, we all forgot to mention learning SSH. That's kind of a big deal. | |||
|
Muzzle flash aficionado |
If you're just doing it for fun, you might just try BASIC. It's very straightforward and one can do quite a lot with it if one tries. I taught myself BASIC while writing a fairly complex scoring program for IPSC/USPSA local matches. flashguy Texan by choice, not accident of birth | |||
|
Member |
While I 100% agree with Para and others about changing careers and the heavy bias toward coders from India, to put this another way. I'm 35 - and have worked in the legal field as a paralegal for 7.5 years. I did a data analytics 'bootcamp' earlier this year, and start a data job next Monday making almost double my previous annual salary, and I'm a white male...so it is possible. | |||
|
Ignored facts still exist |
My God, after 3 pages of discussion, let's just get him started. This reminds me of the time we brought a noob to the range and wasted all of our time debating whether he should start with a revolver or a 1911. Let's just get it done, right now. goto www.python.org/downloads (I'm making the bold assumption that you are using windows 10, 64 bit. If not, then we may need to go to the correct version.) click on the yellow button Download Python 3.10.1 -- this should be the 64 bit windows version. It will download. Open your downloads folder and click on the python-3.10.1-amd64.exe file click install now on the windows warning window. (don't worry, this is not going to harm your computer. Just make sure you are on the python.org site and you are GTG.) on "setup was successful" window, click close. go to your windows start bar and find/start the app "python 3.10" and start python. you should see a command type window with bunch of text like this: Python 3.10.1 (tags/v3.10.1:2cd268a, Dec 6 2021, 18:54:59) [MSC v.1929 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information >>> At the >>> type this: x=1+2+3+4+5 print(x) you should see the answer which is obviously 15. There, you have coded, and found the answer to a simple math problem using python!!!!! once you get this far, we can put something much more complex in an editor and go from there. But this is the first step. You have pilled the trigger, we just need to show you how to load/unload, clear jams, get you into a reloading press, and eventually you will be doing an IDPA/IPSC match every weekend seriously, the next step is put some code (text) into notepad, and then eventually notepad++, run it, and you are rolling from there. . | |||
|
Baroque Bloke |
Congrats on your new job! Serious about crackers | |||
|
Experienced Slacker |
Thank you for your exemplary post on this topic. | |||
|
Big Stack |
Besides Python and a database (usually one of the SQLs) what other tools, libraries, etc., does one need to be up to speed on to actually get someone to pay you to program Python? And will you get hired just by getting enough proficiency from on-line tutorials? I did IT for a long time. Got shunted from programming to administration. Eventually I got laid off, and the entire company I worked for disappeared. I started my own business eventually, but before that, I tried getting trained up on HTML 5 as a new technology (I had done some Java, and was hoping to combine the two.) Without work experience with HTML 5, no one cared. I have a real estate investing business now, but would consider getting back into programming. But it think it's a bit overoptimistic to think you just train yourself up and get a job. There is usually the catch 22 of companies only wanting people that have demonstrable work experience. | |||
|
Now in Florida |
Thanks. I will start here. | |||
|
Member |
If you're starting with Python, a normal editor like notepad++ or sublime text can work fairly well as an editor with minimal learning needed. For development environments that help out with the code, provide hints, and show debug steps take a look at free IDEs. Visual Studio Code is popular and used for many languages. PyCharm (the free Community version) is specifically for Python and what I use at work. | |||
|
Baroque Bloke |
What is your favorite computer language? With experience in quite a few, including some obscure ones, my favorite is the ancient SNOBOL4. Many useful facilities. And yeah, it’s got GOTOs. I’m one of about ten people in the US that likes ‘em. Serious about crackers | |||
|
Wait, what? |
Unless one is willing to work for the .gov; I retired last week and as of that point, every IT person I know, or people in their circle are caucasoid white males. Of course, they are not doing such work as writing code, they are setting up and maintaining various systems, cycling people in and out of hardware, monitoring cyber-security, repairing and replacing aging equipment, etc. The government may obliquely contract to outside sources in some cases but employees seem to be citizens and primarily white. The bigger issue is job availability in a pretty competitive field. “Remember to get vaccinated or a vaccinated person might get sick from a virus they got vaccinated against because you’re not vaccinated.” - author unknown | |||
|
Member |
Like any language, it isn’t the right choice for every project, but my favorite language to use is Clojure. (It probably also isn’t a great first language to learn.) It’s a Lisp that is heavily biased towards functional programming with immutable data structures. It runs on the Java Virtual Machine so the whole ecosystem of Java libraries is available if there isn’t a Clojure library that does what you need. There’s also a version that transpiles to JavaScript.This message has been edited. Last edited by: maladat, | |||
|
Oh stewardess, I speak jive. |
Over the years I've coded by hand or via various IDEs: HTML, CSS, Javascript, Basic, VBScript, Python, asp.net, Oracle Forms, Oracle Financials, mySQL, MS SQL, PL/SQL, and maybe that's it, it's hard to keep up with. Some AS400 work, too, way back. Started writing Basic in middle school on a TRS80 model 4, and later coding webpages by hand (Notepad) at the dawn of the internet for a $10/hr part time gig, and the rest just sort of followed from there, ultimately to proverbial six-figure salaries and world travel. I prefer the Analysis and Project Management work, less being chained to a desk all day, but I owe a lot to what writing code has done for me in this life, from irrelevant personal web pages to work for university departments to big commercial websites to fancy hotels and casino clients to large government contracts and more. It's a very useful skill, and took me around this country and world. Highly recommend. I learned by reading books, experimenting, no formal training, later aided by the internet itself and forums, etc. I have zero certifications and won't be getting any (ain't nobody got time for that). | |||
|
Baroque Bloke |
Another tool that you ought to become familiar with, regardless of the language you choose: some revision control system. I use RCS – yes, Revision Control System. It’s a very old tool. There are newer ones, but RCS is fully adequate if you’re the only person working on your program. And it’s very easy to administer. It stores revisions of your developing program very efficiently (space wise). Only the changes are saved. When you want to get a particular revision, RCS constructs it from the initial version through all revisions. Sounds complex, but RCS does it in an instant. RCS is automatically provided on most platforms. And it’s available as a package from GitHub. RCS is a suite of related tools. E.g., * ci – check in (put a revision in) * co – check out (get a specific revision) * rlog – output a list of the ci messages for each revision that you supplied as you checked them in. * rcsdiff – output a “diff” report to show changes between any two specified revisions of your program. * Others… I was reminded of the necessity of this tool when I had to retrieve an old version of a program I’m currently developing to understand a mysterious bug. And I use RCS for many files that have nothing to do with programming. E.g., my tax log, which is a text file. Serious about crackers | |||
|
Powered by Social Strata | Page 1 2 3 |
Please Wait. Your request is being processed... |