Which programming language do you use most ?
... and why?
Update: Please include an explanation of why/what you use it for, to make this thread more useful.
@JR asked this question and I thought it might warrant its own thread.
My answer:
It depends on what you need to accomplish (the product or result) and which tool will allow you to get the result in the quickest time.
You need a different tool to build a software program to run on computers in your Client's office Vs. making a Cloud-based SaaS application to manage your product sourcing.
Let me explain that more...
Many programmers only know one or two languages, so if they learnt "Java" already, they might try to do everything using that. Or, when some framework becomes popular, like "Ruby on Rails" or "Angular" (a JavaScript framework), then they might use that for everything.
Instead, I would suggest asking an expert (e.g. StackOverflow) what is the best language and software libraries you should use. Because there are so many free or paid software libraries these days, I usually work backwards from there.
For example:
1. Lets say you want to develop an app for your cell phone (mobile phone, handphone, etc.).
You want to accept payments via credit card, PayPal and Apple Pay. AND, it must work on Android, Apple and everything else. Yikes! Therefore I would find someone who can provide a cross-platform payments API (library) to do all that. Then, you find that the library only supports development using 2 languages. And there's your answer.
2. Lets say you want to develop a software program for desktop computers that needs to display lots of visual information. You're imagining lots of fancy graphics like in a movie. I would find a software library that does 3D graphics rendering. Then you find that the library only supports 3 programming languages. However, your program also needs to read medical data files from an x-ray machine. The manufacturer will sell you a software library to work with their proprietary equipment. It only supports 1 programming language. So the answer is the language that works with both the libraries you need.
Most prototypes or MVPs (Minimum Viable Products) can be hacked together like this.
If you can't make the pieces work together then you need to write a piece of software called an "adapter" or "bridge" or "translator". For example, a bank needs to make their database from the Stone Age talk to a new cell phone app. This is really common in the corporate world and is a great treasure trove of potential ideas business ideas. Later on, if your MVP gets funded then you can hire an expert who can optimize or re-write parts of your software.
What about if you're trying to hire someone to do the programming for you...
Look at advertisements on contracting websites and you will see patterns within certain industries. If someone needs to build an app then the replies will come from people with similar skills. If someone needs to build an SaaS application then (hopefully) the people replying will have a different, more suitable set of skills.
Recommendations:
- "Java" for building a cell phone app.
- "C" language is for embedded hardware e.g. the "Ring" doorbell or an I.O.T. device using an Arduino.
- "C++" can be used to make anything. It gives you great speed but it's a difficult language to learn. You would use this for Medical Imaging software, a Computer Game Engine, or your final product.
- "python" is useful to glue things together or to prototype your product. You can sort data, make plot charts, build a simple computer game, test a Deep Learning algorithm to automatically detect faces in photos.
Related threads:
Web-based software:
A game for desktop computers:
Learn to program Vs. learn marketing:
Barrier to entry:
.
... and why?
Update: Please include an explanation of why/what you use it for, to make this thread more useful.
@JR asked this question and I thought it might warrant its own thread.
My answer:
It depends on what you need to accomplish (the product or result) and which tool will allow you to get the result in the quickest time.
You need a different tool to build a software program to run on computers in your Client's office Vs. making a Cloud-based SaaS application to manage your product sourcing.
Let me explain that more...
Many programmers only know one or two languages, so if they learnt "Java" already, they might try to do everything using that. Or, when some framework becomes popular, like "Ruby on Rails" or "Angular" (a JavaScript framework), then they might use that for everything.
Instead, I would suggest asking an expert (e.g. StackOverflow) what is the best language and software libraries you should use. Because there are so many free or paid software libraries these days, I usually work backwards from there.
For example:
1. Lets say you want to develop an app for your cell phone (mobile phone, handphone, etc.).
You want to accept payments via credit card, PayPal and Apple Pay. AND, it must work on Android, Apple and everything else. Yikes! Therefore I would find someone who can provide a cross-platform payments API (library) to do all that. Then, you find that the library only supports development using 2 languages. And there's your answer.
2. Lets say you want to develop a software program for desktop computers that needs to display lots of visual information. You're imagining lots of fancy graphics like in a movie. I would find a software library that does 3D graphics rendering. Then you find that the library only supports 3 programming languages. However, your program also needs to read medical data files from an x-ray machine. The manufacturer will sell you a software library to work with their proprietary equipment. It only supports 1 programming language. So the answer is the language that works with both the libraries you need.
Most prototypes or MVPs (Minimum Viable Products) can be hacked together like this.
If you can't make the pieces work together then you need to write a piece of software called an "adapter" or "bridge" or "translator". For example, a bank needs to make their database from the Stone Age talk to a new cell phone app. This is really common in the corporate world and is a great treasure trove of potential ideas business ideas. Later on, if your MVP gets funded then you can hire an expert who can optimize or re-write parts of your software.
What about if you're trying to hire someone to do the programming for you...
Look at advertisements on contracting websites and you will see patterns within certain industries. If someone needs to build an app then the replies will come from people with similar skills. If someone needs to build an SaaS application then (hopefully) the people replying will have a different, more suitable set of skills.
Recommendations:
- "Java" for building a cell phone app.
- "C" language is for embedded hardware e.g. the "Ring" doorbell or an I.O.T. device using an Arduino.
- "C++" can be used to make anything. It gives you great speed but it's a difficult language to learn. You would use this for Medical Imaging software, a Computer Game Engine, or your final product.
- "python" is useful to glue things together or to prototype your product. You can sort data, make plot charts, build a simple computer game, test a Deep Learning algorithm to automatically detect faces in photos.
Related threads:
Web-based software:
WEB/DIGITAL - Most valuable programming language for online marketers?
Hello everyone, One of my goals for the next couple of months is to improve my programming skills. As an online marketer I think it’s really useful to know code and besides of that I kind a like programming :). I currently know HTML, CSS and the basics of PHP. My question for you guys is, what...
www.thefastlaneforum.com
WEB/DIGITAL - Which programming language should I learn?
Do any of you know which programming languages should I learn in order to build a website like reddit.com/digg.com? Thank you!
www.thefastlaneforum.com
A game for desktop computers:
EXECUTION - Learning C (Game Programming) Progress Thread
Introduction: Hello Fastlane Forum! I am a 19 year who is pursuing a CS degree in college with a particularly interest in game development. As I am a terrible procrastinator, and have read that accountability systems increase the odds of success by 95%, I thought I would start this progress...
www.thefastlaneforum.com
Learn to program Vs. learn marketing:
GOLD! - HOT! - Learning to Program is STUPID! (or SMART?!)
I still don't understand why people here want to learn to code! Spend that time learning to market and write sales copy. Spending 1000 hours to learn to code to spend 200 hours writing an app is STUPID. Spend the 1000 hours learning to market and write copy, and you can use that skill for...
www.thefastlaneforum.com
Barrier to entry:
is Coding/Programming considered a barrier to entry?
Hi guys, I've literally just finished reading MJ's book and i'm still coming to terms with some of the concepts and changing my state of mind. It's actually been quite a shift mentally for me. Anyway, I have some computer/technical background and can code at probably an intermediate level in a...
www.thefastlaneforum.com
.
Dislike ads? Remove them and support the forum:
Subscribe to Fastlane Insiders.
Last edited: