• 2

Favourite programming language?


Question

Recommended Posts

  • 0
  On 09/02/2023 at 02:53, freedonX said:

C is still alive??
Learned it 20 years ago in collegue..loved it! Then I started leearning OOP (C++). Man, it was like knowing a new religion and telling you your current religion (C) was a fraud. Just couldn't do squat on OOP.
Thought C was so called behind. With all web and modern systems.

Did have 1 course on Assembly...oh yeah lots of fun!!!   /s


Never was into code anyways in my professional career

Expand  

Very much so. Guess what the Linux kernel is written in?

  • 0
  On 09/02/2023 at 02:53, freedonX said:

C is still alive??
Learned it 20 years ago in collegue..loved it! Then I started leearning OOP (C++). Man, it was like knowing a new religion and telling you your current religion (C) was a fraud. Just couldn't do squat on OOP.
Thought C was so called behind. With all web and modern systems.

Did have 1 course on Assembly...oh yeah lots of fun!!!   /s


Never was into code anyways in my professional career

Expand  

Every single important embedded device is, inmost probability, coded in C.

  • Like 2
  • 0
  On 09/02/2023 at 02:53, freedonX said:

C is still alive??
Learned it 20 years ago in collegue..loved it! Then I started leearning OOP (C++). Man, it was like knowing a new religion and telling you your current religion (C) was a fraud. Just couldn't do squat on OOP.
Thought C was so called behind. With all web and modern systems.

Did have 1 course on Assembly...oh yeah lots of fun!!!   /s


Never was into code anyways in my professional career

Expand  

Current version of C is C17, C23 is in preview. C++'s current version is C++20 with C++23 in preview.

 

Lower level languages like C and C++ still have their uses and modern features do get added without breaking ABI, most of the time...

  • 0
  On 09/02/2023 at 06:44, Arceles said:

Every single important embedded device is, inmost probability, coded in C.

Expand  

Yeah I’ve seen a lot of job postings for embedded software devs requiring C++ skills

  • 0
  On 09/02/2023 at 17:39, freedonX said:

Wonder then, if C/C++ will take the road of Cobol. 
15-20 years ago all the senior cobol coders were already dead, hard to find fresh meat.

Expand  

Do not think so. C is the most efficient languaje besides assembler, and the thing with embedded devices is the lack of resources, hence the pursuit for eficiency.

  • 0
  On 09/02/2023 at 17:39, freedonX said:

Wonder then, if C/C++ will take the road of Cobol. 
15-20 years ago all the senior cobol coders were already dead, hard to find fresh meat.

Expand  

That will likely never happen, WindowsNT (the Kernel not the OS, though most of the OS is still written in C++ too), XNU (macOS, iOS, iPadOS, watchOS, tvOS kernel) & BSD are all written in a mix of Assembler, C and C++,  Linux is written in C and Assembler (Linus refuses to let C++ into the kernel).

Most game engines are still written in C/C++ as well for efficiency.  

The problem with other programming technologies is their runtimes tend to be massive, and some of them wont even work without their runtimes and add to an applications size, especially when libraries are staticly linked, Kernels (especially on x86 based platforms) have a limited amount of space that can be used.  Kernels tend to either A) implement their own small language runtime or B) run a stripped down version of C/C++ without the runtime (loosing a few of the language features in the process but still usable).

  • 0
  On 09/02/2023 at 17:49, Matthew S. said:

That will likely never happen, WindowsNT (the Kernel not the OS, though most of the OS is still written in C++ too), XNU (macOS, iOS, iPadOS, watchOS, tvOS kernel) & BSD are all written in a mix of Assembler, C and C++,  Linux is written in C and Assembler (Linus refuses to let C++ into the kernel).

Most game engines are still written in C/C++ as well for efficiency.  

The problem with other programming technologies is their runtimes tend to be massive, and some of them wont even work without their runtimes and add to an applications size, especially when libraries are staticly linked, Kernels (especially on x86 based platforms) have a limited amount of space that can be used.  Kernels tend to either A) implement their own small language runtime or B) run a stripped down version of C/C++ without the runtime (loosing a few of the language features in the process but still usable).

Expand  

There is also another thing, portability. C can adapt pretty much to any hardware, provided you have some sort of wrapper for each and one of the low level instructions used for that specific device.

  • 0

So I have a junior dev in my team, he has a basic handle on PHP but… very basic.

I spent a couple of hours writing a task for him to complete. A basic “who is in the team” web app, you know - add users, remove users, update users. I expanded it so that later parts can be added such as “lookup the users photo from an API using AJAX”.

I then broke this down into essentially 20 small steps. When complete he will have had hands-on experience with PHP, JavaScript (jQuery), HTML, CSS, Bootstrap, AJAX, APIs, SQL (tables, views, stored procedures)…  As a precursor I took him through a very quick hour long intro to OOP also.  I know this stuff is very basic but… I know he has ability to be a good dev, can tell from the way he solves problems - and I really enjoy mentoring, so I’ll be very pleased when he completes it. So will he be cos I gave him a £2000 incentive to get it done. I’ve given him about 2 weeks, which seems fair to me and will be on-call for him to assist/steer.

  • Like 2
  • 0
  On 09/02/2023 at 23:54, Dick Montage said:

So I have a junior dev in my team, he has a basic handle on PHP but… very basic.

I spent a couple of hours writing a task for him to complete. A basic “who is in the team” web app, you know - add users, remove users, update users. I expanded it so that later parts can be added such as “lookup the users photo from an API using AJAX”.

I then broke this down into essentially 20 small steps. When complete he will have had hands-on experience with PHP, JavaScript (jQuery), HTML, CSS, Bootstrap, AJAX, APIs, SQL (tables, views, stored procedures)…  As a precursor I took him through a very quick hour long intro to OOP also.  I know this stuff is very basic but… I know he has ability to be a good dev, can tell from the way he solves problems - and I really enjoy mentoring, so I’ll be very pleased when he completes it. So will he be cos I gave him a £2000 incentive to get it done. I’ve given him about 2 weeks, which seems fair to me and will be on-call for him to assist/steer.

Expand  

Ah wow!

Most companies don’t train junior devs these days, it’s great that yours does!! 👍 

 

Most require a CS degree or demonstratable programming exp

  • 0
  On 10/02/2023 at 03:01, Software Dev Expert said:

Ah wow!

Most companies don’t train junior devs these days, it’s great that yours does!! 👍 

 

Most require a CS degree or demonstratable programming exp

Expand  

I don’t fully subscribe to that. I’ve seen plenty of roles advertised that train devs up on the job, alongside knowing other managers who do the same.

  • 0
  On 09/02/2023 at 17:49, Matthew S. said:

That will likely never happen, WindowsNT (the Kernel not the OS, though most of the OS is still written in C++ too), XNU (macOS, iOS, iPadOS, watchOS, tvOS kernel) & BSD are all written in a mix of Assembler, C and C++,  Linux is written in C and Assembler (Linus refuses to let C++ into the kernel).

Expand  

How about Rust? Neither language is my thing but I hear that it's starting to gain popularity vs C/C++, and is now officially supported by the Linux kernel along with C. As I read it, safer, supposedly faster in some cases, etc. Also read somewhere that Mark Russinovich from MS would like to switch to Rust over C/C++ too eventually. Doubt it would ever send C to pasture alongside Cobol, but it might give it a good run for the money. 

  • 0
  On 10/02/2023 at 08:46, Dick Montage said:

I don’t fully subscribe to that. I’ve seen plenty of roles advertised that train devs up on the job, alongside knowing other managers who do the same.

Expand  

When I was a graduate and I searched junior software dev positions online, they all required a degree or substantial programming experience. Both small and large companies. And even when I came across apprentice roles they mostly required some coding experience.

 

Softwire is the only employer I know taking on employees without programming experience. 

 

I was about to ask where you’re based... funnily enough you are also based in the UK. I guess we use different job boards. What do you use?

  • 0
  On 10/02/2023 at 09:25, Max Norris said:

How about Rust? Neither language is my thing but I hear that it's starting to gain popularity vs C/C++, and is now officially supported by the Linux kernel along with C. As I read it, safer, supposedly faster in some cases, etc. Also read somewhere that Mark Russinovich from MS would like to switch to Rust over C/C++ too eventually. Doubt it would ever send C to pasture alongside Cobol, but it might give it a good run for the money. 

Expand  

Widely unknown in embedded.

  • 0
  On 10/02/2023 at 09:56, Software Dev Expert said:

What do you use?

Expand  

I don’t, I have a recruitment team that do all that so I just end up with vetted CVs

 

  On 10/02/2023 at 09:56, Software Dev Expert said:

they all required a degree or substantial programming experience

Expand  

Keyword being “or”… but to my mind, I value experience sure, but that doesn’t imply commercial. If someone has been programming for years and they now want to do it as a job, fantastic! Shows they have a personal interest in it.

One question I always ask in interviews is “What was that moment when you decided you wanted to be a dev, what go you into programming?”. If they give me some boring “Well I went to uni and…”, bye! I want someone who’s gonna say they tinkered with computers, they broke stuff, they had an idea and tried. And then they found “wow I can make this do things”, I want a passionate answer!

  • Like 3
  • 0
  On 10/02/2023 at 22:51, Matthew S. said:

If I'm not mistaken I believe it has been ported to AVR's.

Expand  

It still widely unknown. Yes, Rust maybe an alternative, but C is very well proven and also is still more efficient whenever we are talking about kilobytes of RAM. There is also the fact that very well developed tools to check for misbehaviours in C exist (i,e. MISRA, LINT) whicih also help to check for potential problems in code. C in itself is a language that I do not think will be ever phased away, unless something drastic, like quantum computing, replaces all embedded devices.

  • 0
  On 10/02/2023 at 23:09, Dick Montage said:

I don’t, I have a recruitment team that do all that so I just end up with vetted CVs

 

Keyword being “or”… but to my mind, I value experience sure, but that doesn’t imply commercial. If someone has been programming for years and they now want to do it as a job, fantastic! Shows they have a personal interest in it.

One question I always ask in interviews is “What was that moment when you decided you wanted to be a dev, what go you into programming?”. If they give me some boring “Well I went to uni and…”, bye! I want someone who’s gonna say they tinkered with computers, they broke stuff, they had an idea and tried. And then they found “wow I can make this do things”, I want a passionate answer!

Expand  

Ah yeah of course, I wasn't suggesting that experience always implies commercial, provided the company is open to hiring junior devs. 

I'd say that hiring someone with no programming experience at all, however, is the exception rather than the rule. Recently our team had an employee who transferred from another role within the company on the basis of their problem-solving skills. The new employee was given all the necessary training to excel.

From my personal experience university doesn't teach all the skills necessary to be a good software developer. However it teaches the foundations and problem-solving skills. Most of the projects assigned are ones that have already been accomplished previously a million times and can be found with a google search easily. Nothing like what you'd encounter in a workplace. I found that it was my final year project at university which involved a bunch self-learning, problem solving and creativity (a crucial skill to succeed on the job)  in addition to side projects I undertook to learn more modern programming practices e.g. React framework rather than legacy code, and blog-reading. These are the main things that have helped me get the job, especially my first job. My passion for continuous learning through blog-reading outside of work is what helped to give me the edge when changing companies.

  • 0
  On 11/02/2023 at 18:49, Software Dev Expert said:

From my personal experience university doesn't teach all the skills necessary to be a good software developer.

Expand  

I didn’t learn a damn thing at uni that helped me become a good dev.

  • 0
  On 11/02/2023 at 21:49, Dick Montage said:

I didn’t learn a damn thing at uni that helped me become a good dev.

Expand  

Regarding what’s relevant to my current role, I learnt the Java Spring framework and Ruby on Rails framework. I self-taught Node and Express and built a web application using this for my final year project at university. I also learnt Android studio, building Java desktop apps, C++ and python. 

 

As I say it helped with the foundations but I didn’t face the type of problems that I face in my job. I think progression would occur fastest if someone started out in an apprentice role. Software dev in a professional environment is very different to a student environment. 

I think the issue was the way we were marked. We had many coursework assignments. We were marked based on the number of programming language features we use. That led to higher marks for those who over-complicate their code. You know what they say... writing more lines of code does not make someone a better programmer, quite the opposite in fact.

I’d say that helped me become a dev but not necessarily a good one. I gained knowledge helping me to become a good dev through self-learning and professional experience. 

 

What sort of programming did you learn at university? I chose the university I did due to the heavy emphasis on coursework. I knew I wanted to be a software dev prior to commencing university. I wouldn’t go for any course that relied heavily on exams. Because memorising stuff does NOT make you a good programmer. 

  • 0
  On 12/02/2023 at 06:17, Jose_49 said:

In my case

 

1. TypeScript

2. C#

3. Rust (I'm still getting the basics)

4. Python

 

I don't mind learning a new one. As long as it gets the job done!

Expand  

What are you trying to accomplish? What are your goals? 

 

I wish you the best of luck in your journey and feel free to post a question if you have any :)

  • 0

Being older than dirt, I think my favourite language will always be my FIRST language, Z80 assembler... But it was terribly difficult to learn and code that on a Sinclair ZX81, then the Spectrum 48k as they both had TERRIBLE keyboards, but later on, in college, I learned to program in Z80 using hex on the Mulitech Micro-Professor MPF-1...

multitech_mpf-1b_1.jpg

I had so much fun programming that little thing to control a robot arm to grab stuff off my lecturer's desk... So much so that he ended up disconnecting it's grabber! :p  I got the Zaks Z80 programming bible thrown at me so many times in class... :p

Nowadays it's all fancy high level stuff that pretty much anyone can do, but back then, you really needed to understand things down to the metal, which is why I also studied microelectronics and robotics.  Hell, most programmers these days can't even count in binary...  I've used so many languages over the decades that it's actually hard to keep track but these days it's mostly web stuff.... HTML, CSS, Javascript (yuk!), C# and so on... I suppose if I had to pick a favourite of modern languages, I'd probably go with C#, but I do so miss hitting the metal directly...

 

  • Like 3

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Sony unveils its first fight stick 'Project Defiant', supports PC and PS5 by Pulasthi Ariyasinghe In a surprise twist, Sony announced a new piece of hardware at its State of Play presentation today. Currently going by the codename Project Defiant, it is Sony's first attempt at making a fight stick. Considering the company is currently partnered with Marvel to make a first-party fighting game featuring heroes and villains from the popular comic universe, this seems to be the right time to unveil the project. As seen in the teaser trailer above, the wireless fight stick follows the modern black and white PlayStation hardware style of the consoles and standard gamepad controllers. The controller will ship with a toolless design for changing the restrictor gates, with square, circle, and octagon options incoming for the stick. Meanwhile, the buttons are confirmed to have mechanical switches. Plus, a dedicated touchpad, much like on the DualSense controller, is available on the top of the fight stick. "It’s built in a sturdy, ergonomic design for a comfortable feel during intense fight sessions," adds the company. Sony is leveraging its PlayStation Link technology in the device. With it, the company is promising ultra-low latency wireless connectivity, making sure it provides players "precise in-game response to each button press and digital stick movement." Interestingly, PlayStation Link is Sony's proprietary wireless connectivity standard designed for PlayStation 5's audio transmissions, which is now being used a little differently for this piece of hardware. The controller has built-in storage for holding both the restrictor gates and the PS Link USB adapter. As expected, a wired connection is also possible, with a USB-C port available on the device for connecting to a PlayStation 5 or PC. To make sure the device remains in good condition during travel, Sony is throwing in a sturdy sling carry case with each Project Defiant fight stick. More details, like the official name, internal hardware, release date, and most importantly, price, will be revealed later. The hardware has a 2026 launch window right now.
    • Precisely. I didn't give Reddit permission to sell my posts to any AI vendor from any of my accounts. Since I've been on Reddit since before the current pseudo-AI existed, I don't think anyone did...
    • The character tech looks awful, like something from 10 years ago.
    • lol net-negative? They're worth $29 billion, so they aren't hurting. They're just money hungry and don't care at all about the free videos on their platform. They shouldn't be making money off of those, but they are. Those content creators that are uploading their videos they made aren't making anything, but YouTube is making tons of money off of them, along with being exorbitant. If they want to do what they did before and lock Premium videos in a paywall, then fine. But no one is going to put up with them strong-arming people into paying just to have an ad-free experience while watching super old videos uploaded by John Doe at 360p.
    • Sony unveil Marvel fighting game 'Tōkon: Fighting Souls' for PlayStation 5 and PC by Pulasthi Ariyasinghe Sony held a massive surprise in store for those who made to the end of its State of Play presentation today. Coming in as a collaboration between PlayStation Studios, Arc System Works, and Marvel Games, Tōkon: Fighting Souls is slated to be a tag team fighter featuring everyone's favorite heroes and villains from the Marvel comics universe. Watch the debut trailer above. Developer Arc System Works, which has previously worked on series like Guilty Gear and Blazblue, has revealed that the focus on this project was making sure it was easy to pick up and play by anyone. To put this into perspective, the studio says that while other fighting games require learning each character's moves to play them effectively, Tōkon will only have one way of playing for all available fighters. "From the beginning, we aimed to make MARVEL Tōkon: Fighting Souls a title that could be enjoyed by a wide variety of players," explains Game Director and Lead Battle Designer, Kazuto Sekine. "We have designed the mechanics in such a way that you can perform a variety of actions with either traditional fighting game inputs or simple inputs. With the press of a few buttons, multiple characters can appear on screen to provide backup or attack together – creating a new and exciting team VS battle experience." So far, Captain America, Iron Man, Spider-Man, Doctor Doom, Storm, Ms. Marvel, Star-Lord, and Ghost Rider (Robbie Reyes) have been revealed as playable characters, neatly filling the trailer's four versus four battle. Each character has a Japanese flair to them too, such as Iron Man's unique Gundam style for his armor. As for why the studio went with the 4v4 Tag Team battle solution, the team said that the team-up nature of superheroes was the inspiration for that, making sure that players can fill the screen with all sorts of powers they are familiar with. Tōkon: Fighting Souls is coming to both PlayStation 5 consoles as well as PC sometime in 2026. More announcements with reveals for characters, stages, gameplay modes, and online mechanics will be coming up until launch as well.
  • Recent Achievements

    • First Post
      James courage Tabla earned a badge
      First Post
    • Reacting Well
      James courage Tabla earned a badge
      Reacting Well
    • Apprentice
      DarkShrunken went up a rank
      Apprentice
    • Dedicated
      CHUNWEI earned a badge
      Dedicated
    • Collaborator
      DarkShrunken earned a badge
      Collaborator
  • Popular Contributors

    1. 1
      +primortal
      348
    2. 2
      snowy owl
      167
    3. 3
      +FloatingFatMan
      164
    4. 4
      ATLien_0
      161
    5. 5
      Xenon
      127
  • Tell a friend

    Love Neowin? Tell a friend!