Welcome guest. Before posting on our computer help forum, you must register. Click here it's easy and free.

Author Topic: Easiest Language to Learn?  (Read 30943 times)

0 Members and 2 Guests are viewing this topic.

Redcaa

    Topic Starter


    Intermediate

  • [Insert Personal Text]
  • Thanked: 1
    • Experience: Beginner
    • OS: Windows XP
    Easiest Language to Learn?
    « on: October 08, 2009, 10:18:38 AM »
    What is the most powerful and easy programming language to learn? I have a slight idea of HTML.

    macdad-



      Expert

      Thanked: 40
      Re: Easiest Language to Learn?
      « Reply #1 on: October 08, 2009, 04:14:14 PM »
      Just for refrence, HTML isnt a true programming language, its more or less a 'Foundation' for webpages that use Java, VBScript, etc.

      The easiest would be BASIC, thats my opinion and its usually what begginers start out with anyways.

      Theres several free BASIC compilers out there, for instance Just BASIC is one:
      http://www.justbasic.com/

      Or you can go with Microsofts VB.NET(Visual Basic .NET) its BASIC with a more organized feel(and yes its free: http://www.microsoft.com/express/vb/Default.aspx), and for the sake that BC doesn't get me, VB6 is another alternative(Its the older version of Visual Basic) but you have to buy it.

      NOTE: If you want to get in depth with Game Programming/Graphical programs then you want to go with compilers like VB.NET
      If you dont know DOS, you dont know Windows...

      Thats why Bill Gates created the Windows NT Family.

      gh0std0g74



        Apprentice

        Thanked: 37
        Re: Easiest Language to Learn?
        « Reply #2 on: October 08, 2009, 05:36:28 PM »
        The easiest would be BASIC, thats my opinion and its usually what begginers start out with anyways.
        it can be easy , but not "powerful".
        @OP, you can try Python. Its both easy and "powerful". By "powerful", i mean it comes with libraries and modules you can use with ease to do your tasks.

        BC_Programmer


          Mastermind
        • Typing is no substitute for thinking.
        • Thanked: 1140
          • Yes
          • Yes
          • BC-Programming.com
        • Certifications: List
        • Computer: Specs
        • Experience: Beginner
        • OS: Windows 11
        Re: Easiest Language to Learn?
        « Reply #3 on: October 08, 2009, 06:02:39 PM »
        Quote
        If you want to get in depth with Game Programming/Graphical programs then you want to go with compilers like VB.NET C/C++

        har.

        HTML is a markup language,  enough said.

        I think the OP should clarify exactly what they mean by "powerful"...
        I was trying to dereference Null Pointers before it was cool.

        kpac

        • Web moderator


        • Hacker

        • kpac®
        • Thanked: 184
          • Yes
          • Yes
          • Yes
        • Certifications: List
        • Computer: Specs
        • Experience: Expert
        • OS: Windows 7
        Re: Easiest Language to Learn?
        « Reply #4 on: October 09, 2009, 10:11:48 AM »
        Quote
        I think the OP should clarify exactly what they mean by "powerful"...
        ...and what they want to do.

        PHP, Perl, ASP, Coldfusion, etc. are all languages used in Web design.

        DaveLembke



          Sage
        • Thanked: 662
        • Certifications: List
        • Computer: Specs
        • Experience: Expert
        • OS: Windows 10
        Re: Easiest Language to Learn?
        « Reply #5 on: October 09, 2009, 10:26:31 AM »
        Like everyone else stepping in here. Depends on what you are trying to accomplish as far as powerful, as for some languages are better geared with built in functions to handle specific needs.

        Also you would have to make a choice of GUI or Console Programming type languages. Such as do you want something with a neat user interface or something that crunches or controls data.

        I agree that Basic is the easiest to learn and I am currently teaching a friend on Basic. He wants to make neat Windows Apps and I said well thats cool, but you cant just jump into that programming without a foundation of which to build from and that foundation is understanding all pieces of programming ( input, arrays, variable types, loops, IF-Then-Else statements, data types "String, Integer, Double, Float, etc", printing to display text, saving information to files, Reading information from files ( if supported by the language ), sound, color, graphics, system calls, and on and on)

        I would start with Basic to understand how the pieces of the puzzle of programming work, then dive into something more complicated after creating a programming knowledge foundation to build from and relate to other languages.

        macdad-



          Expert

          Thanked: 40
          Re: Easiest Language to Learn?
          « Reply #6 on: October 09, 2009, 03:09:40 PM »
          har.

          HTML is a markup language,  enough said.

          I think the OP should clarify exactly what they mean by "powerful"...

          Hey, atleast I didn't trash VB6  ;)
          If you dont know DOS, you dont know Windows...

          Thats why Bill Gates created the Windows NT Family.

          BatchFileCommand



            Hopeful
          • Thanked: 1
            Re: Easiest Language to Learn?
            « Reply #7 on: October 10, 2009, 07:23:38 PM »
            Python, Python Python Python. Python is powerful, fast, elegant, and is easy to read. All the things a programmer craves. Oh yes, and it's dynamically and strongly typed. Don't comment on those if you don't know what they mean.  Python is also very efficient. If you want some good python tutorials go to 'thenewboston' channel and check out his awesome tutorials. But lets make the list.

            C - Powerful/ Easy /nice readability / efficient / flexible / OOP
            Basic - Powerful/ Easy / nice readability / efficient / flexible / OOP
            VB6 - Powerful / Easy / nice readability / efficient / flexible / OOP
            Python - Powerful / Easy / Nice Readability / Efficient / Flexible / OOP

            Python FTW!!!

            italicized is good.
            bold is best.
            Nothing is normal.
            strike is bad
            « Last Edit: October 10, 2009, 07:39:33 PM by BatchFileCommand »
            οτη άβγαλτος μεταφ βαθμολογία

            computeruler



              Egghead

              Thanked: 63
              • Yes
              • Yes
            • Experience: Experienced
            • OS: Mac OS
            Re: Easiest Language to Learn?
            « Reply #8 on: October 10, 2009, 07:36:45 PM »
            Im learning c++ and so far it doesnt seem to be too hard.  I guess visual basic is pretty easy

            BC_Programmer


              Mastermind
            • Typing is no substitute for thinking.
            • Thanked: 1140
              • Yes
              • Yes
              • BC-Programming.com
            • Certifications: List
            • Computer: Specs
            • Experience: Beginner
            • OS: Windows 11
            Re: Easiest Language to Learn?
            « Reply #9 on: October 11, 2009, 11:01:32 AM »
            You can't have dynamic and strong typing at the same time. Unless of course your actually referring to the fact that Python supports expando objects by implementing IDispatchEx.

            "readability" isn't even a concern- for most languages it depends on how much you know it, and more precisely how it's written.

            Exception being regular expressions... and since they dominate perl, it can be difficult to make extremely readable perl code, unless you dump using regular expressions to begin with... but that is it's most powerful feature.


            Regarding Object orientation- Python is not Object oriented. It's code doesn't reside in Classes. You write a Python code file- but it's not a class- and if it is, how do you define such things as inheritance, implemented interfaces and aggregate classes? These are all a requirement of Object orientation, and I see none of them in Python.

            Visual Basic 6 only lacks inheritance- this is because it's based on the Component Object Model (COM)... (this oddly enough allows it to interface even with .NET classes... which is a bit disorienting, to be honest.).

            saying VB6 isn't efficient and saying Python is is a bit stupid and obviously not backed up with anything substantial. Python is a interpreted language. VB6 can be compiled to Native code. (although P-code is only about 5% slower on average). Python by design (same with VBScript, Javascript, Perl, and any number of languages) is limited by it's interpreter.


            a small bit of Python:

            Code: [Select]
            def translate(str,dict):
            words = string.split(string.lower(str))
            keys = dict.keys();
            for i in range(0,len(words)):
            if words[i] in keys:
            words[i] = dict[words[i]]
            return string.join(words)


            equivalent VB6:
            Code: [Select]
            Public Function Translate(ByVal Str As String, Dict As Scripting.Dictionary) As String
                Dim words() As String, i As Long
                words = Split(Str, " ")
                For i = 0 To UBound(words)
                 
                   
                    If Dict.Exists(words(i)) Then
                        words(i) = Dict(words(i))
                    End If

                Next i
                Translate = Join(words, " ")

            End Function


            Problems with Python: whitespace is important. this is probably one of the stupidest and most restricting ideas ever conceived of for a language, but it does have the advantage of forcing what should be done anyway. Also neat is what appears to be the usage of a loop construct that is "set" so to speak:

            Code: [Select]
            For <variable> = <start> to <finish> step <step>

            it takes the approach of:
            Code: [Select]
            for <variable> in <array>

            This is very cool. So cool in fact that VB has it.(heh)

            Code: [Select]
            For Each <variable> in <array>
            works just fine. The added advantage is that for basic iterating through an array, you don't need to create an array with the "range" function, or any other function, for that matter.

            Note that in this specific instance, the VB6 version will have significantly reduced memory usage, since the dictionary is a object, just like in the python version. In this case, however, we can see that from the header, since it is a strongly-typed early-bound reference to a Dictionary object. Calling this routine with, say, an array or a reference to a control, or a array, you'll get a type mismatch error. With python, well, who knows. your claims about strong typing seem to be over-emphasized, I see no evidence of any types whatsoever, and the lack of types is the single-biggest cause of bugs in programming languages that support it. (this includes VB, which allows loose typing with the use of the Variant type introduced in VB2)

            Flexiblility:

            Visual Basic allows for the use of the "implements" keyword in the declarations section of a form or class module. this will alow that object to be used polymorphically as an instance of that interface. For example, I have used it with my Expression Parser to allow the creation of "Plugin" objects that can handle operators, functions, and even add new previously undefined behaviour, like the on-the-fly interpretation of Environment variables. (this is in fact used for the Core as well). I imagine this type of behaviour must also be supported by python?

            The only addition Python can possibly add to the Object abilities of VB6 is Implementation inheritance (akin to the "inherits" keyword in VB.NET). However, VB6 can do Implementation inheritance, via the use of it's current  ability to inherit Interfaces combined with the use of an aggregate class of the inherited type. For example:


            cSuperclass.cls:
            Code: [Select]
            Option Explicit

            Public Function Add(Numbers() as Variant) as Variant
                Dim Total as Variant
                Dim CurrVal as Variant
                For Each CurrVal in Numbers
                    Total = Total + currVal
                Next
                Add = Total
            End Function

            subclass.cls, which Inherits the implementation of superclass.cls:

            Code: [Select]
            Option Explicit
            Implements cSuperClass
            Private mvarSuper as superclass

            Private Sub Class_Initialize()
                set mvarSuper = New cSuperClass
            End Sub

            Private Function cSuperClass_Add(Numbers() as Variant) as Variant
                cSuperClass_Add = mvarSuper.Add(Numbers)
            End Sub
            Public Function Add(Numbers() as Variant) as Variant

                Add = mvarSuper.Add(copy)
            End Function

            it is, however, kind of messy. Besides, the entire concept of inheriting an entire implementation is flawed, since it requires knowledge about that implementation- (is it safe to override method "X"?). It would have been possible for the fluff used in the VB above to be made "behind the scenes" so to speak, and create an "inherits" keyword. However cooler heads prevailed.

            Implementation Inheritance is purely part of the domain of weak object heirarchies, and is just as easily created using Interfaces and specific Pre and Post conditions. the main problem with Implementation Inheritance is it is used simply because it is there. I have seen entire java applets written with three classes, all different versions of the applet, each version extending from the previous. This type of use of the feature is stupid. the functionality could have been added right into the "version one" class. the main use of Implementation inheritance is to allow default behaviour for any method that the implementor does not wish to change. But I proclaim that the problem is the changing of the implementation at all- as I said before, without knowing how it works, how can one know it is safe to change?


            and now I'm rambling about Object oriented design principles. Oh well.

            Anyway, to summarize, your evaluation is biassed and therefore wrong. Python is a great language but is no better overall then most others.






            I was trying to dereference Null Pointers before it was cool.

            macdad-



              Expert

              Thanked: 40
              Re: Easiest Language to Learn?
              « Reply #10 on: October 11, 2009, 02:40:59 PM »
              No response from Redcaa.
              If you dont know DOS, you dont know Windows...

              Thats why Bill Gates created the Windows NT Family.

              gh0std0g74



                Apprentice

                Thanked: 37
                Re: Easiest Language to Learn?
                « Reply #11 on: October 11, 2009, 07:01:41 PM »
                "readability" isn't even a concern- for most languages it depends on how much you know it, and more precisely how it's written.
                if the language can provide a programmer with easy to read and use syntax, its a bonus.

                Quote
                Regarding Object orientation- Python is not Object oriented. It's code doesn't reside in Classes. You write a Python code file- but it's not a class- and if it is, how do you define such things as inheritance, implemented interfaces and aggregate classes? These are all a requirement of Object orientation, and I see none of them in Python.
                Python is an OO language. You can define your own classes when programming with it. For normal usage, one can just use what's already available (ie classes) for example, there is string class called "str" and its methods. If you have Python, type help(str) on the interpreter and you will see that its a class(and its methods).

                Quote
                a small bit of Python:

                Code: [Select]
                def translate(str,dict):
                words = string.split(string.lower(str))
                keys = dict.keys();
                for i in range(0,len(words)):
                if words[i] in keys:
                words[i] = dict[words[i]]
                return string.join(words)


                equivalent VB6:
                Code: [Select]
                Public Function Translate(ByVal Str As String, Dict As Scripting.Dictionary) As String
                    Dim words() As String, i As Long
                    words = Split(Str, " ")
                    For i = 0 To UBound(words)
                     
                       
                        If Dict.Exists(words(i)) Then
                            words(i) = Dict(words(i))
                        End If

                    Next i
                    Translate = Join(words, " ")

                End Function

                what does the above  2 pieces of code do? care to explain? i only see that ultimately, the results are just changing any uppercase letters to lower.

                Anyway, have you played with Python's dictionary objects? For example, how easy is it to sort dictionary items by keys or values in VB ?(or vbscript?) ... with Python's dictionary objects and sorting methods, its very easy. The last time i play with vb6, (or even vbscript), sorting dictionary objects (or even sorting ordinary variables) are a pain.

                Quote
                Problems with Python: whitespace is important. this is probably one of the stupidest
                that is not a problem at all. it is also not right to judge something and say its "stupid" just because you don't like it. If it is, that means you are opposing the creator and the many people who use it. Are you also saying that those behind Google's application engine are stupid?

                Quote
                With python, well, who knows. your claims about strong typing seem to be over-emphasized, I see no evidence of any types whatsoever, and the lack of types is the single-biggest cause of bugs in programming languages that support it. (this includes VB, which allows loose typing with the use of the Variant type introduced in VB2)
                see here.


                All all these are said, you can say VB can do this and that, I can say Python does it better blah blah, but its really no point discussing this further, since OP provides no clue as to what he wants in a programming language in detail.

                BC_Programmer


                  Mastermind
                • Typing is no substitute for thinking.
                • Thanked: 1140
                  • Yes
                  • Yes
                  • BC-Programming.com
                • Certifications: List
                • Computer: Specs
                • Experience: Beginner
                • OS: Windows 11
                Re: Easiest Language to Learn?
                « Reply #12 on: October 11, 2009, 07:16:49 PM »
                Quote
                what does the above  2 pieces of code do? care to explain? i only see that ultimately, the results are just changing any uppercase letters to lower.


                Well, from what I can tell, it takes a set of keys, and returns a set of values. (I forgot to transfer the lcase over, but  I suppose switching comparemodes would work.


                Really I Was pointing out that BatchFileCommand, as usual, is incorrect. He's always blabbering on and on about whatever technology currently has his fancy, next week it's probably be LOLCode. I was being purposely biassed in an attempt to show how stupid it is to do that ;)
                I was trying to dereference Null Pointers before it was cool.

                Geek-9pm


                  Mastermind
                • Geek After Dark
                • Thanked: 1026
                  • Gekk9pm bnlog
                • Certifications: List
                • Computer: Specs
                • Experience: Expert
                • OS: Windows 10
                Re: Easiest Language to Learn?
                « Reply #13 on: October 11, 2009, 08:05:13 PM »
                Quote
                ...most powerful and easy programming language...
                The i386 Assembly is by for the mist powerful. And rather easy to learn.  You learn by example and reading the documentation.

                BatchFileCommand



                  Hopeful
                • Thanked: 1
                  Re: Easiest Language to Learn?
                  « Reply #14 on: October 11, 2009, 08:15:21 PM »
                  BC_Programmer, you have obviously never used Python. For indentation, when using the IDLE or built in IDE it automatically indents when necessary. So you don't need to worry about indentation. I'm sorry, it's dynamically typed I was thinking of something else. Not all Python programs have to be OO, which is better then everything being OO. Second of all, you put plenty of spaces in the VB6 code, but none in the Python code, making the Python code not look as nice. Third of all, BC_Programmer, stop acting like a smart-aleck:

                  Quote from: BC_Programmer
                  whatever technology currently has his fancy, next week it's probably be LOLCode.

                  Seriously, talk about ignorance:

                  Quote
                  Really I Was pointing out that BatchFileCommand, as usual, is incorrect.

                  You act like the post above you never existed.
                  You were worse then I thought.

                  Not only that, but the Python and VB6 code don't even work the same.
                  With the split statement you add a lower function to Python and make it look
                  more complicated. Like before, you don't add any spaces, it's all clumped together.
                  Please BC, stop acting like an idiot.






                  οτη άβγαλτος μεταφ βαθμολογία