• 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
  Bi0haZarD said:
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
  Dr_Asik said:
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
  Dr_Asik said:
@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

    • Darwin Mach Kernel/ BSD. Which is both open source.
    • You mean BSD. The UNIX kernel is not open source.
    • I have been on Linux Mint full-time since Jan 2019. while there is a learning curve, it's worth it if you can make the switch, which I can. I mainly browse web, play some games (generally Lutris(Windows games), or through emulators (MAME/Mesen/Flycast etc) etc), and use a small amount of Windows programs (Foobar2000/7-zip/WinRAR/ImgBurn etc) etc. it's nice to dodge the bloat/BS of Windows as you can really feel Linux is all around faster, especially certain things. p.s. recently I enabled NTSync for games since Linux Mint recently offered the 6.14 kernel, which has NTSync support (it's not enabled by default though but you can enable it temporarily for your current boot of the OS through 'sudo modprobe ntsync')
    • A rotten article full of handwaving of anti-consumer practices. Aside from the fact that no, not even close to every piece of major software collects information about its users, ethical developers make such telemetry opt-in and allow it to be completely disabled. To use KDE Plasma as an example, you're shown a greeter upon first boot that gives users the option to send the developers telemetry, with the default being off and 'off' actually meaning off. Windows 10 has never offered that capability - only a promise that Microsoft will slurp up less of your data if you spend time tweaking 50 different privacy settings. There is still absolutely no way to completely opt out of sending Microsoft telemetry in any version of Windows 10 (or 11, naturally). Even using group policy in Enterprise editions only allows you to reduce telemetry to the bare minimum. Home-focused editions don't even get that option. Articles like this dismissing user privacy concerns as "FUD" are a part of the reason Microsoft felt confident enough to go so much further with Windows 11. I guess you get what you deserve in that respect. Personally, I finally made the move to Linux after 15 years or so of dabbling with it, but never really considering a permanent switch. Enjoy your bright, shiny Windows future. You asked for it, after all.
  • Recent Achievements

    • First Post
      smileyhead earned a badge
      First Post
    • One Month Later
      K V earned a badge
      One Month Later
    • Week One Done
      K V earned a badge
      Week One Done
    • Dedicated
      CarlosABC earned a badge
      Dedicated
    • One Month Later
      solidox earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      640
    2. 2
      ATLien_0
      240
    3. 3
      Xenon
      172
    4. 4
      neufuse
      155
    5. 5
      +FloatingFatMan
      123
  • Tell a friend

    Love Neowin? Tell a friend!