I wanna learn to code - where to start

roadracer247

Well-Known Member
Established Member
Joined
Sep 24, 2004
Messages
3,124
Location
Bay Area
So I’m interested in learning more about coding. I wanna be able to create my own website and maintain it myself. I know of literally endless resources. I hear and read about all these different programming languages and I’m not even sure where I can find a good jumping off point.

So I figured I’d ask people who do this kinda thing for a living. I’m a Fireman by trade, meaning this is completely outside my limited realm of knowledge. If you were to start over today, what would be your first few steps? I’m all ears!!
 

roadracer247

Well-Known Member
Established Member
Joined
Sep 24, 2004
Messages
3,124
Location
Bay Area
What do you want to code? If you're talking about building and maintaining a website, that's mostly html. That's completely different than C, Python, R, etc..

But, regardless of what you want to learn, there are a multitude of learning resources online. I'd start here:

Learn to code - for free | Codecademy

Thanks, I’ll check that out. I realized after making this thread that I actually need to do more research into what interests me more, so that I can start to ask the right questions.
 

Sonic 03 Cobra

Yes, that's a 2011
Established Member
Joined
Jun 16, 2002
Messages
1,066
Location
Philadelphia, PA
As others said, totally depends on what you want to do. Python, React and either C# or Java combined with some basic data structure, ReST, and data skills plus AWS or Azure can get you pretty much anywhere.

But, if all you’re looking for is a static web site and have no dev skills then just do a prepackaged site in a box kinda thing and call it a day and spend some time with html4 and css so you can customize a bit.
 

SirShaun

Well-Known Member
Established Member
Joined
Jun 9, 2014
Messages
1,392
Location
Virginia
I've seen some games in browsing steam, where you have to code to progress. Could be a fun interactive way to start.

In conjunction, you should really learn Linux, lose the GUI, and learn how to use a shell. No GUI, less cost on resources. Most any dev environment is running on a shell. Redhat, CentOS being the open source free variant, is known for being "stable", and OS of choice for most production environments, as patch releases seem to be a bit more vetted.

You'll find some companies utilizing Debian based operating systems though, in which case most popular is Ubuntu.

If you want to dabble in IaC (Infrastructure as Code). Automation and Dev Ops essentially. You'll find a lot of foreign dev teams, as developers get outsourced quite alot, but you don't really want your infrastructure managed by a foreign team if you get my drift.

Traditional (Linux/Windows server management)
Ansible you'll see a lot of YAML, JSON, Jinja and shell scripts.
Teraform uses Terraform format and JSON.

Container Orchestrators
Kubernetes uses YAML, and JSON. (Super thin, scaleable, portable application deployment/management)
Docker alot of YAML. (Used to deploy applications to traditional severs, also will deploy to a kubernetes k8, if I am not mistaken)

Dev Ops is pretty sweet. For example, I ripped out Oracle JDK, and replaced with OpenJDK on 30+ CentOS nodes on Friday. Quick migration play, 1 ansible command to kick it off, sat back and watched the show, completed in minutes. Powerful stuff.

Side note, if anyone is utilizing Oracle Java SE 8, they quietly announced some subscription bull shit. Get to OpenJDK or upgrade to 9+.
Java Future Release Notices
Public updates for Oracle Java SE 8 released after January 2019 will not be available for business, commercial or production use without a commercial license.

@treynor is the godfather of Dev Ops. If he drops in, listen to him lol.
 
Last edited:

Sonic 03 Cobra

Yes, that's a 2011
Established Member
Joined
Jun 16, 2002
Messages
1,066
Location
Philadelphia, PA
Yes learn shell and scripting. For the OP, who is just getting started, he probably just wants to focus on bare bones basics. If you are starting at ground zero, pick up one of the many online intro to coding courses. If you jump right into a 4G (abstracted - java, C#) or 5G (interpreted and abstracted- python, etc) language you will get moving faster but will have no idea why things work the way they work. That’s fine if you just want to play.

“DevOps” is interesting because it’s both CI/CD but also fostering a set of behaviors that require the devs to take more ownership and accountability and largely break down the ITIL walls that prevented us from moving fast by collapsing job functions, high degrees of automation and eliminating gatekeeping in the traditional arms-length fashion. Over the last decade through implementation of Agile (first scrum then kanban and SaFE) then CI/CD then DevOps, my teams have gone from quarterly to monthly to biweekly to weekly to daily to just in time release cycles. DevOps is the enabler to get below two weeks.

Serverless is where it’s at, Linux vs windows is religious. I run a large engineering organization with five nines uptime off of a combination of windows and multiple flavors of Linux and both on-prem and hosted cloud and SaaS technologies (AWS, SFDC, etc). Lowest TCO is not Linux for legacy, OS-based infrastructure due to high maintenance costs in terms of labor. Cloud foundry and cloud are just containers so the OS becomes largely a non issue and we come more platform agnostic (yay). Bottom line pick the best tool for the problem you are solving. There’s a reason most professional devs largely use Macs (my teams are 65/35 macs/PCs), best of all worlds from a dev perspective. Unless you get into .net then you are largely back into windows territory. With AWS it goes ten steps further and the container concept becomes obsolete.
 
Last edited:

32icon321

Active Member
Established Member
Joined
Jun 8, 2007
Messages
494
Location
Kentucky
If you’re a hands on learner check out an arduino and/or a raspberry pi. Cheap, easy, and fun to learn some fundamentals


Sent from my iPhone using svtperformance.com
 

Lemmiwinks

Active Member
Established Member
Joined
Mar 24, 2012
Messages
981
Location
Sweden
Yeah, don't touch Java though. It's quite a nightmare to use...

What is your endgame goal? There are many levels of coding. For example coding what I do for a living isn't that difficult, the coding part that is. Relay logics in PLC's. The difficult part is the logic, the programming itself is piss-easy.
For PLC programming I prefer Structrured Text.
For the love of god please do not use CFC or SFC when programming PLC's, it's just one big blob of silly LEGO technics or something... It's pretty ridiculous.

Then you have Visual Basic which is a good starting ground for higher level languages, though I doubt there's anybody out there looking for a person skilled in Visual Basic.
But it lays a good foundation for going to C# which is a lovely programming language. It's very powerful and versitile.

There are many programs, languages and programmers out there. Most of them know the basic stuff like C#, Scripts in VB, Python etc.
 

GodStang

Well-Known Member
Established Member
Joined
Aug 20, 2003
Messages
14,723
Location
Aiken, SC
Like said above there are so many languages and each has its own purpose. Know a days websites come in templates and really don't use that much html anymore unless you want to go behind the scenes and tweak items. Some are just typing words to get it to do things and some have GUI interfaces for coding. If you want to make an app or game then there are languages that are good for that.

Funny thing is I learned a few different languages in college then programmed in another on the side job and then once I graduated and got into the real world they wanted you to know something else.
 

CV355

_
Established Member
Joined
Aug 24, 2016
Messages
3,272
Location
_
Necessity is not only the mother of invention, but also the best teacher for coding. Let the end goal dictate what you learn and the order in which you learn it.

I know several programming languages pretty well. I didn't just read some book on it and set out and start typing like a '90s action movie hacker. I spend more time creating spreadsheets and doodling flow charts than actually typing out code. Planning is most important step, in my opinion.

And the people that invest their time on StackOverflow and MrExcel and forums such as those? They're the real MVPs.

VBA is one of my favorites because it's so damn simple and you can find uses for it everywhere. Sick of doing some repetitive task in Excel? Pop open the VB studio and have at. I started there in making simple userforms and automating data collection / entry. Then I said "hey, I can add more functions to speed up my day." If I didn't know how to do it, I broke it down into bite-size chunks and Google'd my way to success. Once in a while I'd post up my scripts for critique and some generous nerd would give me advice on how to make it better.

There were other languages/environments that were not so friendly to learn. I started learning a Delphi variant when I was 12 and eventually programmed some 2D video games in it from scratch. Baby steps. Lots of headaches- all it takes is one wrong operator and your entire night is spent looking for it. It all goes back to necessity as the path- "I want ____ to do ____"
 
Last edited:

Users who are viewing this thread



Top