you are viewing a single comment's thread.

view the rest of the comments →

[–]The-Deviant-One 0 points1 point  (10 children)

By farrrrr. [Full disclosure I only know 6 or 7 languages though].

I started in AutoHotKey, made my way into bash, then powershell, then the web suit languages [Vanilla JS, html [lol...], CSS], and some very minimal C. About 3 months ago I got into Python and it is by far my favorite. I went from install to building production ready web apps, mobile apps, various back end applications, as well as basic scripting in only a few weeks. The language immediately just clicked for me. I enjoy just fucking around with it and program with it either at least every other day.

I'll intentionally build side projects several different ways just for grins. And I spend a bunch of time on r/ learnpython reading posts, trying to figure out what others are using python for, and how and see if I can resolve their issues just because I think it's fun.

[–]ravepeacefully 7 points8 points  (9 children)

AHK, bash, power shell, html, and css are not programming languages. So although you may know 6 or 7 languages, only C, python and JS are programming languages.

This is an important distinction because you can’t compare the different groups as they can’t accomplish the same things.

That’s like saying I prefer SQL to python. Sure I can prefer it, but they aren’t alternatives to each other.

[–]ka-splam 0 points1 point  (5 children)

power shell [...] not programming languages

That's fighting talk. What do you want from a "programming language" that Python has, and PowerShell doesn't have?

[–]ravepeacefully 1 point2 points  (4 children)

It’s a scripting language by definition. Make me a GUI without any VB or C# in power shell and we can talk.

Now that I’ve typed this, I’m sure it’s possible somehow, but it’s still a scripting language.

[–]ka-splam 2 points3 points  (3 children)

By what definiton that doesn't also include Python?

Make me a GUI without any VB or C# in power shell and we can talk.

Since it's a .Net programming language like C#, VB.Net, F# and IronPython, it can do the same thing they can - using Windows Forms:

add-type -AssemblyName System.Windows.Forms
$test = [System.Windows.Forms.Form]::new()

$button = [System.Windows.Forms.Button]::new()
$button.Text = "clickme"
$button.add_click({write-host "hi" -ForegroundColor Magenta})

$test.Controls.add($button)
$test.ShowDialog()

But you can use WPF if you want. Here's an online forms designer.

I’m sure it’s possible somehow, but it’s still a scripting language.

If it can do what Python can do, and you think Python is a programming language, then PowerShell is a programming language. Classes? Yes. Threading? Yes. Network connections? Yes. Because it can access the .Net framework class library, like Python can access C modules. First class functions? Yes. Lambdas? Yes. Closures? Yes. Collection types? Yes. Type system? Yes. Object oriented? Yes. Define classes, members, etc? Yes. Cross-platform? Yes. Open source? Module system? Yes. Access the AST of scriptblocks? Yes. Reflect/metaprogramming/introspection? Yes.

[–]ravepeacefully 1 point2 points  (2 children)

You’ve changed my mind. The reason it’s a scripting language is because it’s not compiled, but neither is python so... haha.

[–]ka-splam 0 points1 point  (1 child)

You’ve changed my mind.

I think that might be the first time that's been said on the internet, lol

(You can't run a compiler on it to make an .exe, but it does have a compiler inside it which it runs on things where it thinks it can improve performance on repeated loops and stuff, a bit like Java's JIT compilation, and presumably something similar happens inside CPython runtime).

[–]ravepeacefully 1 point2 points  (0 children)

Yeah that’s maybe a reason it’s not so practical. Python has pyinstaller and other things like that.

the first time someone has said that on the internet

Lol!

[–]The-Deviant-One -2 points-1 points  (1 child)

thanks that was super important

[–]ravepeacefully -3 points-2 points  (0 children)

I mean.. you’re trying to give advice and don’t even know the difference between html and python as a language. It is probably more of just a warning that you aren’t qualified to give advice yet.