1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

"More Powerful" programming language

Discussion in 'General Programming Chat' started by cashfap, Sep 4, 2010.

  1. cashfap

    cashfap Junior Member

    Joined:
    May 5, 2010
    Messages:
    115
    Likes Received:
    14
    Location:
    Estonia
    Hi,

    I've always thought Perl or C was the "Most Powerful programming language" out there. Recently someone told my it was python.

    Thoughts??


    Also I program in Java and PHP for a living. If I wanted to move into a "More Powerful" programming language, which one would I transition easiest to?

    Thanks.
     
  2. thevil

    thevil Junior Member

    Joined:
    Aug 17, 2010
    Messages:
    190
    Likes Received:
    189
    Assembly would be. Powerful and understandability would be C. IMO
     
  3. cooooookies

    cooooookies Senior Member

    Joined:
    Oct 6, 2008
    Messages:
    1,008
    Likes Received:
    216
    Asking here for programming advices? Unfortunately, this is the wrong forum here. I am also looking for a nice place to discuss BH programming stuff, still w/o success...

    If you are already using Java: stick with it, J is really great. And now comes my big advice: for bot programming the overall super-performer is HtmlUnit which allows also for parsing JS! All you can do manually with your browser, you can do with HtmlUnit.
     
    • Thanks Thanks x 2
  4. cnick79

    cnick79 Jr. VIP Jr. VIP

    Joined:
    Jun 10, 2010
    Messages:
    653
    Likes Received:
    341
    Location:
    Google's SandBox
    what do you mean by "More Powerful". each language has their place and it's a matter of using the right tool for the job. In terms of speed C is great because it's fast.
     
  5. Skills

    Skills Newbie

    Joined:
    Aug 17, 2010
    Messages:
    46
    Likes Received:
    4
    Location:
    Carolina
    Assembly and C is old as dirt!

    I have heard of J. Might want to look into C#
     
  6. minute80

    minute80 Regular Member

    Joined:
    Dec 3, 2008
    Messages:
    310
    Likes Received:
    81
    What do you mean by most powerful language?

    Assembly is the language you can do everything in, but there is a saying that says only 10 people on the whole planet really know how to program in it (I would say less then 1k people know assembly).

    I am vivid user of Python, and have used it in so many situations that it could spin someone's head. But Python has three big disadvantages, it is (almost, I could be on the track to solve it) impossible to obfuscate your code at least in a form similar to binary executable, it is not well supported on shared web hosting platforms and it is slow as hell.

    When everything is taken into account, plain old C is often presented as portable assembler, and I would say that the majority of different kinds of software was written in C. Number wise, majority of software is written in C++, but it is farther from the metal then C, and thus C is more versatille (almost all drivers and core OS components are written in C).

    Google GO looks promising, as it was invented by guys who developed C: however it doesn't work under Windows without gimmicks.

    Hope I answered your question.
     
  7. brokenhero

    brokenhero BANNED BANNED

    Joined:
    Sep 4, 2010
    Messages:
    97
    Likes Received:
    25
    I think c# is a most powerful language its used for both web and desktop
     
  8. flaktrak

    flaktrak Power Member

    Joined:
    Mar 1, 2010
    Messages:
    522
    Likes Received:
    139
    Location:
    South!
    in my early days I did everything C. Now I do everything in PHP. C is POwerful but not really needed these days. computing power is cheap and the net is pretty quick. C doesnt really have a place in IM, not that I can tell anyway.
     
  9. flaktrak

    flaktrak Power Member

    Joined:
    Mar 1, 2010
    Messages:
    522
    Likes Received:
    139
    Location:
    South!
    Then again with all the bots and automation you guys do. C is needed!
     
  10. mindless

    mindless Junior Member

    Joined:
    Sep 5, 2010
    Messages:
    103
    Likes Received:
    3
    For me PHP is a most powerful programming language.
     
  11. smack

    smack Junior Member

    Joined:
    Feb 1, 2010
    Messages:
    182
    Likes Received:
    78
    Occupation:
    Software Engineer/Evil Genius
    Location:
    inside .NET

    straight C? no i don't think so.

    C++, maybe but really not needed.

    C#/VB.NET is an excellent choice. the framework gives you plenty of horsepower built on a platform that facilitates rapid development.

    short of a custom atomic mailer or an individual piece of a bot that requires tight memory management, C++ would really be overkill. it's a lot of extraneous management code. time better spent developing features and more functionality in another language.

    java can be leveraged well for bots too, however i've never been all that impressed with the workings of the java language. the programs often seem buggy and bloated. that's just one man's opinion though and could be more based on how the application was conceived and not necessarily the language.

    but really in my opinion you want something with a good framework backing it. you will get many more benefits from being able to develop stable and powerful applications quickly than you will from controlling every memory location at all times. in real world applications a platform like .NET allows you enough memory control to get a very efficient application, but also couples that with a rapid enough development platform to really be able to develop quickly.
     
  12. cashfap

    cashfap Junior Member

    Joined:
    May 5, 2010
    Messages:
    115
    Likes Received:
    14
    Location:
    Estonia
    Thanks everyone.


    As far as what do I mean by "Most powerful": I don't know. I was trying to feel out what that even means by getting some responses.
     
  13. minute80

    minute80 Regular Member

    Joined:
    Dec 3, 2008
    Messages:
    310
    Likes Received:
    81
    Well I like the general idea od .NET languages, however:

    1) .NET platform is badly supported on Linux. Mono is nice as long as your application was started in Mono other than that YMMV. I always tend to aim for more portable solutions in case I need to scale out quickly by getting number of linux machines.

    2) Code in unprotected and you have to supply runtime for those who don't have it.

    Well, for me Java is a bit better here since it is very well supported under Linux, and I don't have to think much about it when I put stuff on dedicated server.

    I also saw some hideous Java based apps, but since then I learned a lot, and found out what was bugging them...it was all about programers who didn't know how computers handle stuff, especially memory.

    On top of that I let other people be smart instead for me: official languages at Google are C,C++ and Java :)

     
    • Thanks Thanks x 1
  14. BlackHatSoda

    BlackHatSoda Junior Member

    Joined:
    Oct 6, 2009
    Messages:
    178
    Likes Received:
    100
    Basically there's no such thing as "most powerful". Low and very low level languages like C and Assembly allow more direct access over a computer. This allows for more control and, if you know what you're doing, more performance. The trade off is that they require much more code and understanding to do even basic things. The added control they give to the programmer also means more chances for the programmer to mess something up.

    That's why they have 3rd and 4th generation languages that hide the bulk of common functionality into included libraries/frameworks.

    The "best" language is one that allows you to develop your desired application as fast as possible with as few bugs as possible and still meet your functionality and performance requirements.

    3rd gen languages like C#/VB.NET/Java require writing less code as the frameworks do the heavy lifting. They also make it much easier to debug code and handle unexpected errors.
     
    • Thanks Thanks x 1
  15. smack

    smack Junior Member

    Joined:
    Feb 1, 2010
    Messages:
    182
    Likes Received:
    78
    Occupation:
    Software Engineer/Evil Genius
    Location:
    inside .NET
    how do you mean unprotected? you can run it through an obfuscator if you're planning on distributing it (although even that isn't 100% secure). generally yes, you're right though. grab a program like RedGate reflector and you have a fairly good view in to the code. i rarely program anything that gets released to people outside of my immediate colleagues though, so it's generally not an issue for me personally.

    i understand the OS restrictions as a theoretical argument, however my counter to that is two fold. most organizations in real world business run windows. i haven't met a client yet consulting that doesn't have at least a few windows servers. so if you ever need to go get a legitimate company having a strong background in .NET technologies does have its rewards. the other side of my point is that when you're making BHW software for yourself you have complete control over which OS you use, and in recent years windows hosting has become insanely cheap (thank you virtualization!). now strictly from my experience if you're making some form of scraper, ewhore app, etc... i like to run as a windows application. it's easier to manage and you don't need to worry about postbacks, server downtime, or any other of the issues associated with an RIA.

    now of course this is all one man's opinion. i always advocate doing what makes sense for your particular situation and your skill set. if you have some background in java, use that. if you know php really well, go there. but if you're starting from scratch i usually like to steer people towards .net. the IDE is rather friendly compared to others, the community support is excellent, and the framework is robust and proven. plus you have the ability to leverage the same framework in either C# syntax or VB.NET which gives you some good flexibility to use the syntax that clicks the best with you.

    as far as what google, etc use, they have the luxury of a large resource pool and business supporting a highly structured development process. where as most of us BHW are losing food off our table each day that an app goes uncompleted. the rapidity and subsequent stability of my development is what keeps my revenue streams flowing. ;)

    i ramble about this stuff a lot on here, but i guess it can really all be summed up by what will get the job done in the best way for the individual. to the OP, hit up google and look at the pros and cons of the platforms you're considering. take in to account operating system portability (if that is a concern for you), rapid development capabilities, ease of the syntax and framework (if applicable) that you will be using, etc etc.

    as a very smart man that i always quote likes to say: "a language is a tool, and not a destination."

    cheers. :cool:

    -edit-

    if you're green to .NET or OOP in general here is a post i put together with lots of good links for getting started in the language. this is also worth a look if you're junior to intermediate. there is some good info linked from here:

    Code:
    http://www.blackhatworld.com/blackhat-seo/visual-basic-6/15877-visual-basic-tutorials.html#post1981680
     
    Last edited: Sep 5, 2010
  16. minute80

    minute80 Regular Member

    Joined:
    Dec 3, 2008
    Messages:
    310
    Likes Received:
    81
    Thanks for a thread link, but I am not green to OOP, lol, have been doing development for quite some time.

    I completely understand your point, and I NEVER will say that Windows platform and associated tools are not important (that would be a lie), however, in my case, eventhough I run Windows, I always managed to solve problems on Linux rather than on Windows, and in same circumstances that brought be the edge I needed to defeat competition.

    Even for us who are practically fed from the Intenet, it should be obvious that all successful Internet projects run on Linux backend, and this is because it is cheaper and more powerful than Windows platform (at least for the same amount of money).

    Now, the thing that personally bugs me and could have hurt my business before, is that Microsoft deliberetly kills his own products, especially developer tools, in order to maintain high profit margins. True, you can still use C++ in .NET environment or VB 6.0, but all advanced features are reserved for latest and greatest in their offering. How is that affecting developers? It makes you "relearn" concepts again and spend huge amount of money on tools, books and for those who still belive in them, certificates.

    On the other hand, tools like Java are also progressing, but at least they are free, so you don't have to shell out shitload of money just to be on par with competition. And when you are Senior Java developer you are acknowledged, but Senior VB 6.0 developer is unrecognized by those who search for Senior VB.NET developer.

    I think you catch my drift.

    Regarding ease of .NET deployment, I saw my share of non-working .NET applications due to faulty .NET runtime installation.

    So, where am I in all of this? I use Python for most of my stuff and manage to accomplish eveything in it :p. I use Java only for those who explicitly ask for it.

     
  17. tacopalypse

    tacopalypse Executive VIP Jr. VIP Premium Member

    Joined:
    Nov 30, 2009
    Messages:
    980
    Likes Received:
    2,485
    Home Page:
    different programming languages are used for different purposes.

    you gotta first decide what you want your program to do, and then pick the best language to do it in.

    there's no single 'best language for everything'
     
  18. hotcheats

    hotcheats Regular Member

    Joined:
    Dec 2, 2008
    Messages:
    328
    Likes Received:
    74
    Location:
    EU
    There's is nothing like more or less powerful languages...they're all just tools, what you can accomplish with them is up to developer.
     
  19. 39ster

    39ster Junior Member

    Joined:
    Dec 12, 2009
    Messages:
    174
    Likes Received:
    58
    I use command line PHP. It runs php script like any other console program. It's very good for making bots.
     
  20. BinaryGenius

    BinaryGenius Newbie

    Joined:
    Sep 17, 2010
    Messages:
    30
    Likes Received:
    1
    It all depends, but C/C++ with asm could do whatever you like. What I have been told though is the real power lies in porting pieces through multiple languages. you can get the most portability and power of various apis. My friend was looking into using ffmpeg(written in c) ported to java then to javascript, the purpose being to build a video converting all on client's side (reducing bandwidth).