Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Sininu
Jan 8, 2014

Dumb Sex-Parrot posted:

I found a book about making game engines in the trash a month ago, completely unblemished and printed in 2019 why anyone would want to throw it out is beyond me. Anyway it says that I need to know C++ so I'm going to pre-empt the coding month by learning some basic C++ in February by following a course at codecademy.

I think I will treat this like a hobby project so I don't expect to churn out anything amazing anytime soon. Still confused why anyone would toss a completely good book like that.

How's the C++ thing going?

I restarted learning C++ (I tried some back in 2017, didn't get too far) week ago and I'm about to get into memory management and advanced classes stuff. It's getting complicated now. Hopefully I'll manage to not to lose motivation like it happens with most things I start.

Adbot
ADBOT LOVES YOU

Plinkey
Aug 4, 2004

by Fluffdaddy

Sininu posted:

How's the C++ thing going?

I restarted learning C++ (I tried some back in 2017, didn't get too far) week ago and I'm about to get into memory management and advanced classes stuff. It's getting complicated now. Hopefully I'll manage to not to lose motivation like it happens with most things I start.

Learn how to use pointers if you really want to write c++ drill it into your head no matter how long it takes

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


Modern C++ uses a lot less pointers in favor of references and move semantics. You can't get away with knowing nothing, but you can write a lot of code without using pointers.

Plinkey
Aug 4, 2004

by Fluffdaddy

ultrafilter posted:

Modern C++ uses a lot less pointers in favor of references and move semantics. You can't get away with knowing nothing, but you can write a lot of code without using pointers.

I guess it's changed since I did rts stuff, it also might have been plain C

Batterypowered7
Aug 8, 2009

The mist that chills you keeps me warm.

Essentials: Pointer Power! - Computerphile

https://youtu.be/t5NszbIerYc

mirarant
Dec 18, 2012

Post or die
Current job project combines the Beasts of Apocalypse: Java EE and Oracle Weblogic :smithicide:

MrQueasy
Nov 15, 2005

Probiot-ICK

mirarant posted:

Current job project combines the Beasts of Apocalypse: Java EE and Oracle Weblogic :smithicide:

Are you at least running on Java 8?

mirarant
Dec 18, 2012

Post or die
Java 8 yes, I've given up on following the various Java versions in the wild and our company at least doesn't want to pay for the latter releases.

I confess I have no idea what the pricing model is for Java9+ or what advantage those versions even bring.

Batterypowered7
Aug 8, 2009

The mist that chills you keeps me warm.

mirarant posted:

Java 8 yes, I've given up on following the various Java versions in the wild and our company at least doesn't want to pay for the latter releases.

I confess I have no idea what the pricing model is for Java9+ or what advantage those versions even bring.

They fixed one old thing, broke five old things, and gave you three upgrades, two of which are also broken.

BonerKid
Jan 3, 2002

Chill
It's good to see goons learning to code. I mainly use TypeScript for my job and while I really like it for frontend development it is hot trash for backend code (I didn't choose Node someone else did). I've used a bunch of different frontend frameworks and Angular is by far my favorite, although I haven't touched ASP.NET or React in a few years so maybe they have improved.

For anyone interested in learning how to build websites I'd suggest just learning basic HTML, CSS, and javascript first before diving into a framework. If you already know the basics I can't recommend Angular enough. If you already know Angular spend some time learning how to work with Observables and Subjects, they are really great and once I had a good grasp on them I was able to completely remove Redux from the projects I'm working on.

Computer viking
May 30, 2011
Now with less breakage.

If I may recommend yet another language, R is neat. If you use Rstudio, it makes it really easy to write Rmarkdown, which lets you make workbooks that you can use to show off your results to normal people. I find the ggplot2 library to be miles better than fighting with excel plots, especially if you want something more complex, or if you want to do some summaries or statistics first.

R is slightly weird, but I don't think it's especially difficult to pick up - and "I have some tables of numbers I need to analyse or present" is a fairly common problem. It's also easy to get started with, since you get both a light IDE and an interactive shell to poke around in.

I learned on my job (and it was not my first language), so I don't have any first hand experience with the resources that are available - but I can look, if anyone are interested, and I'm happy to answer questions.

Haptical Sales Slut
Mar 15, 2010

Age 18 to 49
Hello fellow goony goons. I need to learn c# to stay employed and I find myself anxious I can do it to any reasonable level. I have a long history of putting together basic bash scripts and powershell poo poo but I largely am an idiot. I understand a basic for loop until you start adding conditions and then my brain falls apart. I don't really have a specific q I just wanted you all to pray for me. god bless u

Methanar
Sep 26, 2013

by the sex ghost

Nuts and Gum posted:

Hello fellow goony goons. I need to learn c# to stay employed and I find myself anxious I can do it to any reasonable level. I have a long history of putting together basic bash scripts and powershell poo poo but I largely am an idiot. I understand a basic for loop until you start adding conditions and then my brain falls apart. I don't really have a specific q I just wanted you all to pray for me. god bless u

You aren't specifically learning c#. you're learning to solve a problem using c#. If you've been using bash and ps you probably already know how to solve a problem in a way a computer understands.

Plinkey
Aug 4, 2004

by Fluffdaddy

Nuts and Gum posted:

Hello fellow goony goons. I need to learn c# to stay employed and I find myself anxious I can do it to any reasonable level. I have a long history of putting together basic bash scripts and powershell poo poo but I largely am an idiot. I understand a basic for loop until you start adding conditions and then my brain falls apart. I don't really have a specific q I just wanted you all to pray for me. god bless u

keep typing until intellisense is happy

TIP
Mar 21, 2006

Your move, creep.



99% of programming is just loops, variables, and conditionals.

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


Computer viking posted:

If I may recommend yet another language, R is neat. If you use Rstudio, it makes it really easy to write Rmarkdown, which lets you make workbooks that you can use to show off your results to normal people. I find the ggplot2 library to be miles better than fighting with excel plots, especially if you want something more complex, or if you want to do some summaries or statistics first.

R is slightly weird, but I don't think it's especially difficult to pick up - and "I have some tables of numbers I need to analyse or present" is a fairly common problem. It's also easy to get started with, since you get both a light IDE and an interactive shell to poke around in.

I learned on my job (and it was not my first language), so I don't have any first hand experience with the resources that are available - but I can look, if anyone are interested, and I'm happy to answer questions.

The R statistical programming software is wonderful, and it really changed the way we do statistics. The R programming language is an abomination and needs to be burned to the ground. But yes, if you want to work with data, it's one of your best choices, particularly if you need to do any analysis that's even slightly outside of the mainstream. The Art of R Programming is probably the best introduction for someone who knows another programming language and wants to make the transition, but it won't teach you anything about the statistical models. The Use R! series is generally a nice blend of theory, methods and programming, but they're not the only options out there.

Haptical Sales Slut
Mar 15, 2010

Age 18 to 49

Methanar posted:

You aren't specifically learning c#. you're learning to solve a problem using c#. If you've been using bash and ps you probably already know how to solve a problem in a way a computer understands.

That is a good perspective, thanks. I've bounced off this maybe 6-8 times throughout my career. I've taken night classes on programming 101 and its frustrating, 80% I already know, then I tune out and I'm loving lost and there's no catching up again for some reason. I guess being able to pay my mortgage should be a good motivator to stick with it.

Tip posted:

99% of programming is just loops, variables, and conditionals.

:prepop:

Computer viking
May 30, 2011
Now with less breakage.

ultrafilter posted:

The R statistical programming software is wonderful, and it really changed the way we do statistics. The R programming language is an abomination and needs to be burned to the ground. But yes, if you want to work with data, it's one of your best choices, particularly if you need to do any analysis that's even slightly outside of the mainstream. The Art of R Programming is probably the best introduction for someone who knows another programming language and wants to make the transition, but it won't teach you anything about the statistical models. The Use R! series is generally a nice blend of theory, methods and programming, but they're not the only options out there.

Their choice of symbols is wild (dots are legal in names? Dollar signs to get members and columns in tables?), and the "try appending a dot and the class name to the function name" "object oriented" system is hog wild. The other two OO systems (ok, point taken) are just kind of there.

Beyond that, though? The basic syntax is boringly standard, just yet another curly bracket language.The underlying model is a surprisingly complete and neat functional language, though. I suggest a dive into Hadley's Advanced R - it's fascinating. (I haven't looked at the 2nd edition yet). I fully understand it if you think the alternate evaluation system should be fired into the sun ... but I genuinely like having an entirely standardized, user-accessible, way to make little domain-specific languages, like the formula syntax.

Compare and contrast to Go, where parts of the language are just Blessed by Google to do things you can't replicate in pure Go.

Methanar
Sep 26, 2013

by the sex ghost

Computer viking posted:

Compare and contrast to Go, where parts of the language are just Blessed by Google to do things you can't replicate in pure Go.

What can't Go do?

Are you referring to some of the magic they do in the standard library around generics/metaprogramming?

Computer viking
May 30, 2011
Now with less breakage.

Methanar posted:

What can't Go do?

Are you referring to some of the magic they do in the standard library around generics/metaprogramming?

Yes, specifically that. :)
I'm not sure if it's too custom-written or if they don't trust us to not make a mess with it, but I don't quite like how it feels either way.

I should note that I like Go, it's just a good example of the implementers having toys we don't get to play with.

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


Computer viking posted:

Their choice of symbols is wild (dots are legal in names? Dollar signs to get members and columns in tables?), and the "try appending a dot and the class name to the function name" "object oriented" system is hog wild. The other two OO systems (ok, point taken) are just kind of there.

Beyond that, though? The basic syntax is boringly standard, just yet another curly bracket language.The underlying model is a surprisingly complete and neat functional language, though. I suggest a dive into Hadley's Advanced R - it's fascinating. (I haven't looked at the 2nd edition yet). I fully understand it if you think the alternate evaluation system should be fired into the sun ... but I genuinely like having an entirely standardized, user-accessible, way to make little domain-specific languages, like the formula syntax.

Compare and contrast to Go, where parts of the language are just Blessed by Google to do things you can't replicate in pure Go.

I think the authors of Evaluating the Design of the R Language put it best:

quote:

As a language, R is like French; it has an elegant core, but every rule comes with a set of ad-hoc exceptions that directly contradict it.
I think their assessment is too kind, but that comes at least in part from their lack of experience trying to write complicated code. I will say that R with the tidyverse is much more pleasant than it used to be, but it's still full of traps for the unwary (= vs. <- vs. <<-, for instance, as well as several standard library functions that can return either a matrix or a vector).

Smugworth
Apr 18, 2003


Tip posted:

99% of programming is just loops, variables, and conditionals.

And when it isn't you should very very suspicious that the solution is overly complicated

Dumb Sex-Parrot
Dec 25, 2020

 
Absurd Pox Term
Rad Buxom Strep
     
Retard Ox Bumps
Borax Dumpster
     
Dares Box Trump

Sininu posted:

How's the C++ thing going?

I restarted learning C++ (I tried some back in 2017, didn't get too far) week ago and I'm about to get into memory management and advanced classes stuff. It's getting complicated now. Hopefully I'll manage to not to lose motivation like it happens with most things I start.

It has been on a bit of a standstill these last few weeks I'm afraid. Classes have started back up again and I keep putting it off.

Computer viking posted:

If I may recommend yet another language, R is neat. If you use Rstudio, it makes it really easy to write Rmarkdown, which lets you make workbooks that you can use to show off your results to normal people. I find the ggplot2 library to be miles better than fighting with excel plots, especially if you want something more complex, or if you want to do some summaries or statistics first.

R is slightly weird, but I don't think it's especially difficult to pick up - and "I have some tables of numbers I need to analyse or present" is a fairly common problem. It's also easy to get started with, since you get both a light IDE and an interactive shell to poke around in.

I learned on my job (and it was not my first language), so I don't have any first hand experience with the resources that are available - but I can look, if anyone are interested, and I'm happy to answer questions.

I used R to do all my data analysis for classes and so on. If anyone has questions maybe I can help in that department. :)
Also I whole heartedly recommend you use Rstudio - it makes things so much easier.

Dumb Sex-Parrot
Dec 25, 2020

 
Absurd Pox Term
Rad Buxom Strep
     
Retard Ox Bumps
Borax Dumpster
     
Dares Box Trump
I got a c++ question:

I'm doing a lesson at codecademy where I need to add up entries of a vector and output them to a new variable, no problem.

My solution is, very loosely:

int start_value = 0;

for (iterate stuff) {

start_value += vector<i>;
}

This works, but the solution suggested by codecademy is:

int start_value = 0;

for (iterate stuff) {

start_value = start_value + vector<i>;
}

I have bolded where things are different
They both do the same thing, and seem to work just fine, but is there a reason for why codecademy's solution is preferred? Here I'm thinking if one method requires less cpu cycles or RAM or whatever?

Mooey Cow
Jan 27, 2018

by Jeffrey of YOSPOS
Pillbug

Dumb Sex-Parrot posted:

I have bolded where things are different
They both do the same thing, and seem to work just fine, but is there a reason for why codecademy's solution is preferred? Here I'm thinking if one method requires less cpu cycles or RAM or whatever?

They are almost certainly going to compile down to the same machine instructions, though your solution has the potential to be more efficient, since operator+= doesn't create a temporary value like operator+ does. But that only matters for complicated types with overloaded operators, for ints it's whatever.

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

Dumb Sex-Parrot posted:

I got a c++ question:
...
They both do the same thing, and seem to work just fine, but is there a reason for why codecademy's solution is preferred? Here I'm thinking if one method requires less cpu cycles or RAM or whatever?

This is a "more than one way to skin a cat" kind of thing. You can come up with correct solutions to the problem that look a lot more different to codeacademy's solution than yours does!* and like Mooey Cow said - they probably all end up as the exact same machine code after compilation, because C++ compilers are fairly sophisticated at recognising what you are doing (if you're doing something commonplace) and optimising it.

* as an example, you could use std::accumulate() and make it into a one-liner.

Dumb Sex-Parrot
Dec 25, 2020

 
Absurd Pox Term
Rad Buxom Strep
     
Retard Ox Bumps
Borax Dumpster
     
Dares Box Trump
Thanks guys. :) I think I'm getting the hang of this.

BornAPoorBlkChild
Sep 24, 2012
are the O'Reily Cookbooks any good for cheap bastards who refuse to pay any money for
Tutorial Subscriptions?

TIP
Mar 21, 2006

Your move, creep.



BornAPoorBlkChild posted:

are the O'Reily Cookbooks any good for cheap bastards who refuse to pay any money for
Tutorial Subscriptions?

Yeah, they're pretty good.

When I was starting out someone recommended the Head First series to me and I also liked those as good introductory books.

Edit: I assumed you meant codebooks and got autocorrected, but I see now O'Reilly has "cookbooks". I haven't used those specifically, just liked the other books I've got from them.

TIP fucked around with this message at 23:09 on Mar 22, 2021

MarxCarl
Jul 18, 2003

BornAPoorBlkChild posted:

are the O'Reily Cookbooks any good for cheap bastards who refuse to pay any money for
Tutorial Subscriptions?

Cookbooks usually aren’t for beginners, but give you snippets or blocks of code on how to do particular things. EX: Here’s bubble sort or here’s how to write a client server in that language. O’Reilys progression from beginner to knowledgeable in language X is usually learning X, X, X cookbook, X specialized stuff...

They’re good books, but I don’t think they fall in the tutorial category if you’re looking for tutorials.

BornAPoorBlkChild
Sep 24, 2012
thank you both. I've watched all of TheNewBoston's Begginer Java, C#/++ and PHP vids and have even dabbled a little bit in APIs and Postman.

i would love some Project ideas from the Thread that would at the very most get the attention from an Employer in hopes of landing and eventually loving up in a Technical Interview

MrQueasy
Nov 15, 2005

Probiot-ICK

BornAPoorBlkChild posted:

thank you both. I've watched all of TheNewBoston's Begginer Java, C#/++ and PHP vids and have even dabbled a little bit in APIs and Postman.

i would love some Project ideas from the Thread that would at the very most get the attention from an Employer in hopes of landing and eventually loving up in a Technical Interview

What are you shooting for? Frontend? Backend? Full-Stack?

A full-stack kind of idea would be to put a frontend on a public api and do something silly with it.
https://pokeapi.co/
https://docs.coinapi.io/
https://thecatapi.com/

Bonus if you can work some cloud services into the hosting.

EDIT: When I say "something silly" I realize that may not be super helpful. So what I mean is something involving persistent users or state (a database or data-store) as well as doing something that isn't just calling the api and dumping json to the screen. Ideas for the state include allowing users to register and mark "favorites". Generating reports that are saved with a unique hash for bookmarking/future reference.

MrQueasy fucked around with this message at 04:39 on Mar 24, 2021

Faith For Two
Aug 27, 2015

Sininu posted:

How's the C++ thing going?

I restarted learning C++ (I tried some back in 2017, didn't get too far) week ago and I'm about to get into memory management and advanced classes stuff. It's getting complicated now. Hopefully I'll manage to not to lose motivation like it happens with most things I start.

Every once in a while, I watch a random YouTube video from CppCon and after a few months, it added up to something that resembles a working knowledge. Some of the videos are for big-brained people, and some are understandable even for beginners. I highly recommend joining the C++ slack channel. It's where I post most of my dumb idiot questions about C++.

https://cpplang.slack.com/

BornAPoorBlkChild
Sep 24, 2012

MrQueasy posted:

What are you shooting for? Frontend? Backend? Full-Stack?

A full-stack kind of idea would be to put a frontend on a public api and do something silly with it.
https://pokeapi.co/
https://docs.coinapi.io/
https://thecatapi.com/

Bonus if you can work some cloud services into the hosting.

EDIT: When I say "something silly" I realize that may not be super helpful. So what I mean is something involving persistent users or state (a database or data-store) as well as doing something that isn't just calling the api and dumping json to the screen. Ideas for the state include allowing users to register and mark "favorites". Generating reports that are saved with a unique hash for bookmarking/future reference.

Full Stack for sure. So basically just futz around with Public API Keys and dress up the raw data into an XML?

BornAPoorBlkChild fucked around with this message at 05:50 on Mar 24, 2021

MrQueasy
Nov 15, 2005

Probiot-ICK

BornAPoorBlkChild posted:

Full Stack for sure. So basically just futz around with Public API Keys?

From a priority perspective, the things our Full-Stack people deal with on a day-to-day basis:
  • Javascript (Angular or React, I like React better and it's more popular, but my company is using Angular)
  • AWS (S3:data storage, CloudFront:CDN, DynamoDB:Database, RDS Postgres:Database)
  • Java Service Backend (Spring)
  • CSS - Material Design

So make a "Webapp" that has state (something saved to database) utilizes external APIs (make http requests to other sites you did not design) and looks like someone thought a little bit about how the frontend works (Javascript Single Page app + CSS)

The "canonical" example project is a task list app, but I like the idea of integrating with services beyond your control to show you know how HTML REST/GraphQL apis work from a consumer side.

Other than that, I'm not involved with the resume pipeline for Junior Software Devs at my company, so I'm not 100% certain how to stand out other than just apply to anything that looks interesting as much as you can. Be honest, and don't be afraid to shoot a little into reqs that include keywords you're not experienced with. If you see a keyword enough... bolt it onto your portfolio project so you can at least answer screener questions about it. When we're interviewing juniors, we're mainly making sure that you are familiar with functions, unit testing, control statements (loops/if/else), regex and reading code. We're also evaluating how you explain things and how you react to questions that are beyond your comfort zone.

Muk Dumpster
Jun 27, 2020


Text Here
I've been wanting to learn programming for years and I jumped straight into c++ which scared me off. My goal and I need to do it to better my life is to get out of retail and learn Java.

BornAPoorBlkChild
Sep 24, 2012

thank you. I see Spring Framework and Java2EE mentioned alot. i hope they got free versions of them!

In terms of building a Portfolio could I also start off doing Freelance Projects on Fiverr?

BornAPoorBlkChild fucked around with this message at 06:21 on Mar 24, 2021

MrQueasy
Nov 15, 2005

Probiot-ICK

BornAPoorBlkChild posted:

thank you. I see Spring Framework and Java2EE mentioned alot. i hope they got free versions of them!

In terms of building a Portfolio could I also starting doing Freelance Projects on Fiverr?

Just coding a lot and learning new ways to approach projects is valuable! If you feel confident enough to work on Fiverr or Upwork or Arc or whatever, then go for it!

I'm too long-in-the-tooth to give good advice about starting from scratch these days. When I started fresh out of college (mid 00s), the cloud didn't really exist, and Javascript wasn't a "serious" language.

Can someone else give more junior level jobhunting advice? I don't get to see candidates until after the recruiters have done their magic.

1337JiveTurkey
Feb 17, 2005

Spring and J2EE have free versions but they're a lot to take in. If you're looking to understand the basic concepts of Dependency Injection like those two frameworks have, it's also worth looking at Guice (my personal favorite) and Dagger (extra simple) to see how it works. They all have an issue where it feels totally magical until you understand what's going on, but if there's a point where it becomes less magical it's Spring > J2EE > Guice > Dagger.

Adbot
ADBOT LOVES YOU

Muk Dumpster
Jun 27, 2020


Text Here
It would be better to learn Java over JavaScript for versatility yeah?

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply