• 0

Favorite programming language?


Favorite programming language  

149 members have voted

  1. 1. Whats your favorite programming language?

    • C
      10
    • C++
      10
    • C#
      46
    • Java
      24
    • Visual Basic .NET
      11
    • BASIC
      0
    • Assembly
      6
    • Perl
      4
    • shell script
      1
    • PHP
      19
    • HTML
      4
    • Flash
      1
    • Powershell
      0
    • Python
      7
    • Pascal
      2
    • ASP
      1
    • XML
      0
    • Ruby
      0
    • Ada
      1
    • Delphi
      2


Question

Im well aware that some of the options listed are accually "family" but hey you have to give options :)

If I missed a important one, please go ahead and say it and Ill add it :)

Thanks jimbo11883: Forgot to mention that.

Some "languages" here arent actually programming languages but ,in say HTML, you can make a simple tic-tac-toe program :) Lets count them anyhow unless someone is against it.

Added Ruby and Ada :)

Added Delphi

Edited by funciona
Link to comment
https://www.neowin.net/forum/topic/635796-favorite-programming-language/
Share on other sites

Recommended Posts

  • 0

@funnyperson:

I agree with most of what you said but not when you talk about C. It so happens that I got an internship in a software company that does low-level software for mobile devices, and what I work on and what I've seen is all C++. Also, C doesn't have classes, so it's not because you can make a good C program that you know how to make a good object-oriented design and that's crucial if you're going to be a software designer. In fact, I think the problem that requires most talent and experience to solve is to come up with a maintainable, flexible and minimally complex architecture, that also has excellent performance (especially when you're dealing with mobile). A good C programmer certainly has in-depth implementation skills but he might come up with naive designs considering the rich set of possibilities offered by C++.

Dealing with pointer arithmetic is generally considered bad practice and in the industry you want to avoid that. Get a design that will avoid having to cast stuff all over the place, and if you really need the casts, use safe ones (at least static_cast).

  • 0

Autohotkey. Because I can write programs in less than quarter of the time needed to perform the same task in C. I mean, displaying a message box is as simple as typing "MsgBox hello world!" . No need for any declarations, #includes, no case sensitivity, no compilation, no dependencies.. and the best part: no need to install any bloated runtimes or frameworks. :)

Sure, it may not be as powerful as C, but then, I don't need it to. On sites like scriptlance and rentacoder, I bid for C/C++/VB projects and I'm usually able to complete the app in AHK and post a demo version while placing the bid, while the others take around a week to complete using traditional languages! Very few people have so far rejected my work (because it was done in AHK as opposed to C/etc), while most were impressed because of the really short duration and have added me in their good-books. Now I get projects without even having to place a bid, thanks to the contacts I've made, thanks to AHK.

  • 0
1. C++

2. C#

3. Pascal/Delphi

I mainly program in c++ because i can't stand the .NET framework.

C++ is more confusing then C# sure, but you limit yourself to Windows only apps unless theres a .NET framework for Linux that i haven't heard of yet.

right now i'm learning cross platform apps, mainly for a Server app i'm working on..

only bad thing i have with C++, is unless you have Visual Studio theres no really good IDE, Dev-C++ is nice, but i want auto completion that doesn't suck.

There is, its called Mono and if i recall correctly its also available for Mac OS. You can use MonoDevelop to code under linux.

  • 0
what I work on and what I've seen is all C++.
Just to clarify, that's not exact, there's also quite a bit of Java, but I'm not sure what actually runs on the devices and what runs on the server side, I'm still pretty green there. In any case if they do run Java applications on mobile devices it only proves my point further.
  • 0
@funnyperson:

I agree with most of what you said but not when you talk about C. It so happens that I got an internship in a software company that does low-level software for mobile devices, and what I work on and what I've seen is all C++. Also, C doesn't have classes, so it's not because you can make a good C program that you know how to make a good object-oriented design and that's crucial if you're going to be a software designer. In fact, I think the problem that requires most talent and experience to solve is to come up with a maintainable, flexible and minimally complex architecture, that also has excellent performance (especially when you're dealing with mobile). A good C programmer certainly has in-depth implementation skills but he might come up with naive designs considering the rich set of possibilities offered by C++.

Dealing with pointer arithmetic is generally considered bad practice and in the industry you want to avoid that. Get a design that will avoid having to cast stuff all over the place, and if you really need the casts, use safe ones (at least static_cast).

I wasn't trying to say that learning C teaches you everything you need to know about programming high-level object oriented programs. I do believe that the low-level understanding of how the machine works and what's going on behind the scenes is valuable for any programmer. I believe that if you abstract away the machine too much you often end up with poor performance. Also many of the good design principles of object-oriented languages such as encapsulation and modularity can and should be followed as much as possible when programming in C.

As a computer engineer undergraduate we learned C++ and then moved to C as our focus became lower level. I noticed that generally the computer engineering students had an easier transition to high-level java and low-level C (Operating Systems class) than the CS majors did from Java to C++ or C (same OS class).

When I say embedded systems I can speak only of the ones I have experience with. As of now that includes Motorola's HC11 (admittedly obsolete), TI's MSP430 (widely used in low power embedded systems), and TI's Davinci (relatively powerful ARM processors with built in DSPs). The MSP430 is exceedingly simple and I actually coded a lot of stuff in assembly, using C only for floating point libraries. I don't think that the MSP430 Compiler even supports the full C++ standard. The Davinci on the other hand is running Linux and I've been writing drivers for custom hardware. I suppose I could use C++ for this, but since the kernel interfaces I will be working with are written in C, I see little point in it.

As far as Cell Phones I would think that most coding at the driver level would be in C, but for applications C++ is used. I could be wrong though.

  • 0

@Niels.

Thanks, never heard of Mono before.

@Dexter

C++:

#include <windows.h>

int main(){
  MessageBox(NULL, "Hello World", "Title", MB_ICONEXCLAMATION | MB_OK);
  return 0;
}

took less than 30 seconds to type that up. and is 16KB in size.

but to each his own, i'd personally spend a little more time getting something to work natively and efficiently.

  • 0

C is beautiful. Screw classes. C++ is not the answer to OOP for C. Objective-C is/was but it's basically been relegated to the world of Apple and the Cocoa framework. Is C the best ever? No, because it is a dangerous language due to its lack of type safety. Pointers also still suck.

I have the most experience with C++ but I wouldn't call it my favorite language by any measure. C++ is one of those languages where you need to be an expert in it to get any meaningful work done. Pointers are just one of the pitfalls for many people. The syntax is ugly and kludgy at times, and will only get worse with C++0x. You need to have the Bjarne Stroustrups C++ Handbook around if you plan to do serious programming because there is always some little technicality you never knew about.

Java is nice for getting work done, but I would gouge my eyes out after looking at someone else's Java code for more than a few hours. The language is to verbose, I don't need huge and explicit names for every method. Plus, Java seems to encourage a lot of terrible coding practices and styles.

I have limited experience with C# so I won't say much on it. But if the language is anything like Java then it probably suffers some of the same problems.

No experience with VB.NET but i've read its basically the same language as C# just with a different syntax. Seems redundant.

Does anyone even write real commercial or widely used code in BASIC anymore? Please say no...? That is probably to much to ask.

Assembly = Respect.

I had a PHP love phase about five years ago where I hated Perl and left it for dead. However, PHP in reality is an ugly language and Perl still reigns superior.

Python is a beautiful language. It's clean and modern feeling. It abandoned the C syntax for what I think is a friendlier and more readable style. Further it's not so verbose like Java that you want to gouge your eyes out after reading it for a few hours. I don't have a ton of experience with it the language.

Never used Ruby, Ada or Delphi. Have heard good things about Ruby.

So what is my favorite language? Hell, I still don't know. If I say C++ I remember all the times I've been burned by it's technical details. Maybe Python? But I am not experienced enough with Python to give a fair response. Based on pure simplicity, I would have to say C even though it's about as safe as a rusty nail sticking up from the floor. Anyone can write C code, it's a compact language that is easy to learn.

To each is his own though!

  • 0

My favourite language is Assembly. I'm coding with MASM for one reason... Sky is the limit when it comes to small and fast PE.

I hate frameworks (Java, DotNet, VB6) because I don't like the idea that someone is doing most of the job for me. I'm a control freak at its worst level.

  • 0

I've only heard good things about Python (except about its performance maybe), and it's the language that intrigues me the most. I can read all C-like languages I've come across as well as BASIC-like languages, but not Python. But I've so much work to do with C++ and then Java and then C# that Python might be relegated to another life, so to speak.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Why? Does anybody actually want this? The constant need to close all browser sessions and wait for a new version to install, just so that there’s a integrated coupon manager feels like a waste of everyone’s time
    • I remember when Louis used to just do interesting Mac/iPhone repairs, now he's boring and just launches "crusades" every week
    • A shame it don't allow people to bypass the MS account, I will stick to using Rufus.
    • Microsoft about to radically change how often your Edge browser updates by Paul Hill Microsoft has just announced that starting with Edge 152, it will be moving to a two-week release cycle for faster, smaller updates. This faster release cadence will begin on August 27. This change comes just several months after Microsoft switched Visual Studio Code to weekly updates. The company said that the Extended Stable releases will remain on an eight-week cycle and that no admin changes are needed to experience the faster release cycle on the Stable channel. The new two-week release cycle will enable the faster delivery of security updates and platform improvements, all while reducing the size and complexity of individual updates. Microsoft claims that organizations will benefit from this change as it offers predictable validation cycles. For organizations that prefer a “more deliberate pace”, the Extended Stable channel remains an option. This change will affect Edge Stable releases on Windows, macOS, Linux, and mobile. The Extended Stable channel will continue to be updated every eight weeks, or every fourth Stable release, for example: versions 152, 156, 160, and 164. The Extended Stable could be a good option for organizations that don’t want the latest updates twice a month and don’t want as much hassle constantly updating browsers. In the case of Visual Studio Code, many of the updates being pushed by Microsoft are AI-related. As we all know, Microsoft Edge has a lot of AI features, so we could see Microsoft pushing more AI, thanks to the faster cycles. On the flip side, quicker releases could mean faster security updates, which is beneficial in a world where AI systems are hunting for software exploits. What do you think? Let us know in the comments. For more updates on Edge, be sure to follow Neowin's coverage. In May alone, we reported on Edge offering in-browser pop-ups to assist users with website compatibility issues, that Edge was losing Copilot Mode, and that Microsoft had fixed a plain-text password bug in Edge. Source: Microsoft 365 Admin Center
    • not yet, because at the moment it is not a threat to MS, if and I mean if it did become a threat to MS Office, then it may be a different thing. MS don't like competition
  • Recent Achievements

    • Week One Done
      davidbazooked earned a badge
      Week One Done
    • One Month Later
      Jamswaz earned a badge
      One Month Later
    • Week One Done
      Jamswaz earned a badge
      Week One Done
    • Rookie
      Marzoid went up a rank
      Rookie
    • Community Regular
      coch went up a rank
      Community Regular
  • Popular Contributors

    1. 1
      +primortal
      514
    2. 2
      PsYcHoKiLLa
      185
    3. 3
      +Edouard
      159
    4. 4
      Steven P.
      83
    5. 5
      ATLien_0
      75
  • Tell a friend

    Love Neowin? Tell a friend!