Any developers/programmers in here?

SCJR

SS.org Regular
Joined
Mar 3, 2021
Messages
364
Reaction score
270
Location
S. Florida
Admittedly didn't search old threads but it seems like mostly video games in here so figured I'd just start one.

As per the title, anyone here been working as a dev for any period of time or just starting out? Server side, client side?

I'm currently refreshing myself on Javascript which I picked up and put down some years back. Also will be learning a back-end language called Elixir. Hoping to begin interviewing by sometime early next year.

While I have many questions I'm more interested in the candid thoughts and opinions on getting into the industry and/or having worked as a dev for any extended period of time.

Personal breakthroughs or pitfalls? Wasted your time learning a language that everyone on YouTube said you needed to get hired and once you did never touched it? Anything, really.

Edit: Though I have some experience with coding and syntax in and of itself I'm blind to the industry at large. I don't know what I don't know so don't hold back anything you think is basic or rudimentary!
 

TedEH

Cromulent
Joined
Jun 8, 2007
Messages
11,243
Reaction score
9,651
Location
Gatineau, Quebec
seems like mostly video games in here
Surprised you didn't run into me in the gaming threads - I'll take any excuse to drop that I've worked in game dev for a good while. There are probably smarter software guys around here if you dig for them (or make a thread looking for them I guess), but I've put in a decent amount of time so far. 9 years or so working on things like console ports, some mobile games, some web games. I guess you'd call that "front end" where there's a distinction to be made. More recently pivoted out of explicitly gaming, and into audio middleware (although it's still mostly targeting gaming).

IMO if you're looking for advice, I wouldn't try to collect languages like they're pokemon cards or something - figure out what industry you want to get into, and learn the core skills needed for that domain. Once you've got the core skillsets and some practical experience with just how to work in a software company, you can transfer that into what new tools/skills/languages you'll need as they come up. Your job isn't to have memorized every tool and technique, because you can't, but to be able to figure out what you need when you need to - which means you're always learning.
 

Emperoff

Not using 5150s
Contributor
Joined
Jul 24, 2005
Messages
7,333
Reaction score
8,840
Location
Spain
Newb developer here! :woohoo:

I lost my previous job a few months before pandemic hit, and when everything went to hell I realized I had to reinvent myself in order to find a job with better future projection. So I took the chance and started studying again. Fast forward three years, I'm working in an IT company and so far, so good.

I can't give you much of advice I guess since I've been working as a dev for less than a year, but I'll try:

Most schools and universities start with Java. I also learned a bit of HTML, XML fundamentals, and a tiny bit of Javascript and Python. If you're mostly interested in web development, you should learn PHP and Javascript. Java is used mostly in backend and server-side, but it's also used in Android development (although it's getting mercilessly abandoned in favor of Kotlin).

Speaking of which, Android develpment is what go me a job in the first place. I made an app for managing the company webstore orders, and then I got the: "We love it, now we want it for iOS too". And everything I did for the prior months just went off the window (since I had to start everything from scratch). Cool, huh? :wallbash: And that's how I got into Flutter development, which I'm loving so far.

I don't really like backend (I like shiny things, so to speak) so mobile development works for me. If I had to give a piece of advice, I'd probably say "learn Javascript", since you can do pretty much everything with it.
 
Last edited:

wheresthefbomb

SS.org Regular
Joined
Jul 30, 2013
Messages
4,428
Reaction score
7,213
Location
Planet Claire
I actually am just starting down this path with a friend, our interest/focus being microcontrollers. More of his interest really, my undergrad is Linguistics and sign systems fascinate me so it's academic as much as anything.

We are still figuring out where to start but so far we've chosen VSCode and PlatformIO for our software, he's going to be picking a microcontroller chip that we'll to be working with, and we will be starting with C, working through a yet-to-be-selected textbook together. Eventually shooting for C++ and/or Python as those seem to be very common languages used with microcontrollers.

We did a lot of sifting reddit threads trying to figure out the best programming language, software, etc to start with and came to the conclusion that at a certain point we just need to pick something and start learning. As @TedEH said, you can't know everything.

Cool thread, interested to see what feedback you get here. Also welcome any feedback/comments on the choices my friend and I are making as we start down this road.
 

MetalDestroyer

Heaven's Football Bat
Joined
Sep 1, 2012
Messages
1,586
Reaction score
1,954
Location
San Diego
I actually am just starting down this path with a friend, our interest/focus being microcontrollers. More of his interest really, my undergrad is Linguistics and sign systems fascinate me so it's academic as much as anything.

We are still figuring out where to start but so far we've chosen VSCode and PlatformIO for our software, he's going to be picking a microcontroller chip that we'll to be working with, and we will be starting with C, working through a yet-to-be-selected textbook together. Eventually shooting for C++ and/or Python as those seem to be very common languages used with microcontrollers.

We did a lot of sifting reddit threads trying to figure out the best programming language, software, etc to start with and came to the conclusion that at a certain point we just need to pick something and start learning. As @TedEH said, you can't know everything.

Cool thread, interested to see what feedback you get here. Also welcome any feedback/comments on the choices my friend and I are making as we start down this road.
Skip all that, buy an STM32 dev board and download the vendor IDE. You've decided to start with the most difficult field to actually get a hello world off the ground and you're trying to move directly to professional programming. Get something running with a superloop or FreeRTOS based on an existing, working vendor example. Do you know how to write a makefile? Do you know how to init a vector table? Do you know where to look in a map file or linker script when it won't even start up? Seriously work your way up so you don't get frustrated and let the computer handle the nitty gritty for now. Heck, I'd even start with Arduino to make sure you've got basic hardware interface and design pattern skills down. I did my senior design project in Arduino and it's a decently full-featured system.

The name of the game in programming is start small, do one thing at a time and work from known existing (working) code when you are starting something new. You're on a crash course for getting frustrated and giving up.

Sincerely, I do this for a living
 

eaeolian

Pictures of guitars I don't even own anymore!
Super Moderator
Joined
Jul 21, 2005
Messages
15,003
Reaction score
3,147
Location
Woodbridge, VA
All modern languages are C. Except YAML, which sucks.
 

coreysMonster

Abrakadabro
Joined
Oct 14, 2008
Messages
1,238
Reaction score
741
Location
Pangaea
I entered the local science fair with a QBasic game when I was in middle school. The game ran at approximately 0.5 fps (yes, one frame every two seconds) but I still won second place.

I'm more interested in the candid thoughts and opinions on getting into the industry and/or having worked as a dev for any extended period of time.
I've been working as a developer for almost 10 years now. I originally went to school for electrical engineering and dropped out because it was all theoretical and I wanted to make stuff. Programming scratches both my urge to build things and to be mentally stimulated. I think if you have those urges, you will do fine in the field. If you don't like building things or don't like solving problems, you're probably not going to enjoy it very much.
 

michael_bolton

SS.org Regular
Joined
Feb 28, 2021
Messages
281
Reaction score
203
I'm currently refreshing myself on Javascript which I picked up and put down some years back. Also will be learning a back-end language called Elixir.

Elixir imo is a bit too exotic. If you're already getting into JS - it's a pretty solid choice for both frontend and backend.

It's obv helpful to understand how things work end-to-end so dabbling in some "full stack" type projects won't hurt as an educational exercise - but - one thing I would suggest is in addition to ramping up on the language in and of itself - pick a functional area and concentrate on it - frontend, backend, algos, mobile etc.

Each one of these would have subsets that I would also pick from to concentrate on specific things - e.g. on the frontend side there are tons of diff frameworks - pick one; backend - do you want to be more of an API dev or a DB integration dev; mobile - ios vs android etc etc.
 

wheresthefbomb

SS.org Regular
Joined
Jul 30, 2013
Messages
4,428
Reaction score
7,213
Location
Planet Claire
Skip all that, buy an STM32 dev board and download the vendor IDE. You've decided to start with the most difficult field to actually get a hello world off the ground and you're trying to move directly to professional programming. Get something running with a superloop or FreeRTOS based on an existing, working vendor example. Do you know how to write a makefile? Do you know how to init a vector table? Do you know where to look in a map file or linker script when it won't even start up? Seriously work your way up so you don't get frustrated and let the computer handle the nitty gritty for now. Heck, I'd even start with Arduino to make sure you've got basic hardware interface and design pattern skills down. I did my senior design project in Arduino and it's a decently full-featured system.

The name of the game in programming is start small, do one thing at a time and work from known existing (working) code when you are starting something new. You're on a crash course for getting frustrated and giving up.

Sincerely, I do this for a living

Very much appreciated. This is why I posted. I will pass this info along. Thank you.
 

SCJR

SS.org Regular
Joined
Mar 3, 2021
Messages
364
Reaction score
270
Location
S. Florida
Elixir imo is a bit too exotic. If you're already getting into JS - it's a pretty solid choice for both frontend and backend.
Good to know. I landed on Elixir soley due to shadowing a good friend who currently works as a full stack dev maintaining a veterinary database and that's what they're using. I was not looking to be hired by that company as they're a smaller startup and so you've got to know the front and back end well as they don't have the manpower to specialize. Back end is more of my interest in general.

Definitely not caught up in learning every corner of every language out there with no practical application.

Never been much into the Arduino/microcontroller stuff myself.

If I had to give a piece of advice, I'd probably say "learn Javascript", since you can do pretty much everything with it.
This echoes what I've heard elsewhere. I saw a quote somewhere that basically said if it can be built in JS, eventually it will be.
 

TedEH

Cromulent
Joined
Jun 8, 2007
Messages
11,243
Reaction score
9,651
Location
Gatineau, Quebec
IMO if you're going to pick "the one language" to learn to get you employable, you shouldn't start with a random language and hope for the best - you should pick a domain that's of interest to you, and figure out what you'll need to get yourself there.
 

Emperoff

Not using 5150s
Contributor
Joined
Jul 24, 2005
Messages
7,333
Reaction score
8,840
Location
Spain
This echoes what I've heard elsewhere. I saw a quote somewhere that basically said if it can be built in JS, eventually it will be.

Yup. For example the Bluetooth app for the Boss GT-1000 is written in Javascript. It is widely used for websites, but also backend and mobile development (through frameworks).
 

thraxil

cylon
Joined
Dec 28, 2008
Messages
1,443
Reaction score
1,297
Location
London
Dev since the 90's. Learned C in high school. Got a Computer Engineering degree (and a Physics degree because I wasn't sure what I wanted to do). Worked for a long time at a University writing random stuff to support research, which got me a lot of experience with a wide array of languages/tools/etc. These days my title is "Senior Systems Architect" at a relatively small startup and my job involves less coding and more writing documentation, trying to teach developers how to build reliable services (most of the last decade of my career has been vaguely "SRE" type work whether I had that title or not), reviewing code, debugging the stuff that the junior devs can't figure out, and helping the company navigate security/compliance things like SOC 2.

Most of my work coding (including the current job) has been in Python and Go (plus a few years of hardcore Perl back in the 90s and smatterings of pretty much every other language that I needed for research tasks). On my own time, I'm a big functional programming nerd and I particularly love Erlang (RIP Joe Armstrong--great guy to have a beer with) and have been using that for projects for more than a decade now. I've been learning Rust as well. I don't like it the same way I like Erlang, but I'm excited about how it seems to be impacting the industry (if you're thinking about learning C++: don't. Learn Rust instead. Even if you have to go back to C++, learning Rust will teach you to the way you *should* be writing C++ and you'll be a better C++ programmer).

Since I'm an admitted Erlang fan, I'm probably biased when I suggest sticking with Elixir (which essentially runs on top of Erlang). I'm not crazy about Elixir syntax (I was never a Ruby fan) but the foundations it's built on are great and the tooling and community around Elixir are top notch right now. Phoenix, LiveView, and Nerves are all amazing. It's not that widely used and you won't see a million job listings for Elixir programmers, but there are also a lot fewer Elixir programmers out there so you have a better shot at the jobs that do exist and any company that's working in Elixir is probably a really interesting place with a better than average engineering culture. If you learn the Erlang/OTP fundamentals that you'll be exposed to writing non-trivial Elixir apps, you will have a much better foundation for building large scale reliable systems in any other language that you switch to later.
 

p0ke

7-string guitard
Joined
Jul 25, 2007
Messages
3,111
Reaction score
2,132
Location
Salo, Finland
Long term mobile app developer here. I started with Windows Phone, then went to Android and am now mostly doing both Android and iOS using React-Native. I made the jump from Javascript to Typescript roughly a year ago, and the general stack I use is RN+Redux+Redux-Offline+React-Navigation (+whatever the specific project needs). I could obviously do web development as well, but we have separate guys for that so I get to focus on the mobile side.

I also know a thing or two about backend development and generally always participate in designing those when my company starts a project where we do everything. Oh and I'm really good with Linux, so sometimes I give tips and assistance to the devops guys too.
 
Top