Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
renchy_is_sketchy

Programming : Where to Start

Recommended Posts

1 hour ago, renchy_is_sketchy said:

wow thanks

About the going straight for it part , i think im gonna wait till spring break so theres no school , especially with exams coming up theres just too much going on at one time. 

But ill defiently do this course thank you.

 

 

Personally i stay away from python and java and would recommend c/c++ for the simple reason that it is cross platform, low level (so you actually learn important concepts and how everything works), very easy to read syntax (ignoring numerical anamolies and the like), its functional/procedural/object-oriented all in one, it is used in a lot of high paying fields further down the line, concepts from other languages translate to c++ given the different types of programming it can be, and it can be entirely learned by using everything to move around and work with numbers and variables.

 

I just think that dealing with others prewritten high level stuff is very complex compared to writting it yourself. But you could be very different from me in that aspect. 

 

 

Link to post
Share on other sites
23 hours ago, Kamjam66xx said:

Personally i stay away from python and java and would recommend c/c++ for the simple reason that it is cross platform, low level (so you actually learn important concepts and how everything works), very easy to read syntax (ignoring numerical anamolies and the like), its functional/procedural/object-oriented all in one, it is used in a lot of high paying fields further down the line, concepts from other languages translate to c++ given the different types of programming it can be, and it can be entirely learned by using everything to move around and work with numbers and variables.

 

I just think that dealing with others prewritten high level stuff is very complex compared to writting it yourself. But you could be very different from me in that aspect. 

 

 

Well...I think C and C++ might be too hard for beginners, I think C# is a better coice because it combines syntax that is really similar to C with a few high level and concepts, basically it's a better mix between C and Java, the only problems are the forced object-orientation and the - compared to C/C++ - bad performance, but both should not be that big of a concern for a beginner.


~chrissx aka. that crazy german dude

A bad website

Link to post
Share on other sites
3 minutes ago, chrissx said:

Well...I think C and C++ might be too hard for beginners, I think C# is a better coice because it combines syntax that is really similar to C with a few high level and concepts, basically it's a better mix between C and Java, the only problems are the forced object-orientation and the - compared to C/C++ - bad performance, but both should not be that big of a concern for a beginner.

Forced object orientation is one of my biggest petpeeves. But i get where you are coming from. 

Link to post
Share on other sites

 

13 hours ago, Stupidwithcomputers said:

Hey does anyone any good ways to get into C/C#/C++, because I can't find a good tutorial or lesson thing that was helpful

Siddhartha rao c++ book from Sams. Got it at barnes and nobles, and thats how i started. 

1547175095009490777618.thumb.jpg.260ae5303a7491194b3e0edcf9626011.jpg

Then refined with TheChernoProject a c++ devs channel from EA games, or used it when i got stuck.

C++ institute and their online course forced me to master the syntax of c++, they have a great course. Navigate to the self study course on Pearson Vue

https://cppinstitute.org/self-enroll-courses

 

And then there is a few free books in .pdf form, as well as case studies on advanced concepts published from great colleges. You can expand with a book on multi-threaded applications with c++, or a book on STL.

 

Hope this helps, its the path i took. From c++ to c & c# isnt that complicated.

 

Link to post
Share on other sites
On 1/8/2019 at 2:48 PM, Radium_Angel said:

If you want to *really* start with the err...basics...start with BASIC (I believe there is a free version called Visual Basic) and get your core programming concepts down. Then move to Pascal (although no longer used, it forces proper programming techniques) and go from there. Of course, you could go all out and learn Assembly, the language of the machine itself, like I did, but it takes many decades of therapy to expunge it from your brain?

I have to learn Assembly in school and was really glad when my teacher introduced C and everything got easier.

Link to post
Share on other sites
10 hours ago, Stupidwithcomputers said:

Hey does anyone any good ways to get into C/C#/C++, because I can't find a good tutorial or lesson thing that was helpful

For C# all introduction level book will cover everything you need.

If the book mention a version of C# anything 6.0 and up are recent enough. (6.0 is what Visual Studio 2015 uses by default)

Just note that the version is not super important as versions only add more features.

 

This book is a favorite of mine for beginners https://www.amazon.com/gp/product/047019135X/ref=dbs_a_def_rwt_bibl_vppi_i6

I also own the another beginner C# book written by Karli Watson and he co-wrote on the one above too.

2008 is not new but basics did not change. I bought it a long time ago to teach a couple friends that wanted to start programming. I still pass it around these days.

 

Link to post
Share on other sites
2 hours ago, Mephi00 said:

I have to learn Assembly in school

You have my sincere condolences...


So rise up, all ye lost ones, as one, we'll claw the clouds

Link to post
Share on other sites
3 hours ago, Radium_Angel said:

You have my sincere condolences...

I still can't figure out why people are so afraid of assembly. I'm not going to claim that it's actually useful to know from an application development perspective, but I've always found assembly fun, and easier to grasp than higher level languages. Granted, most of my practice is with AVR and PIC. I can't stand x86.


I will never succumb to the New Cult and I reject the leadership of @Aelar_Nailo and his wicked parrot armies led by @FakeCIA and @DildorTheDecent. I will keep my eyes pure and remain dedicated to the path of the One True; IlLinusNati

Link to post
Share on other sites
18 minutes ago, straight_stewie said:

I still can't figure out why people are so afraid of assembly. I'm not going to claim that it's actually useful to know from an application development perspective, but I've always found assembly fun, and easier to grasp than higher level languages. Granted, most of my practice is with AVR and PIC. I can't stand x86.

I learned Assembly on IBM Mainframes. Custom iron, not even remotely x86/64. This is perhaps why...


So rise up, all ye lost ones, as one, we'll claw the clouds

Link to post
Share on other sites
52 minutes ago, straight_stewie said:

I still can't figure out why people are so afraid of assembly. I'm not going to claim that it's actually useful to know from an application development perspective, but I've always found assembly fun, and easier to grasp than higher level languages. Granted, most of my practice is with AVR and PIC. I can't stand x86.

I got a course on udemy for Assembly with ARM chips and im excited to do it. But i gotta finish learning openGL, vulkan, and how to make game engines first. Still i completely agree that low level stuff is way easier to understand.

 

OpenGL is low levelish, and its a blast. Its fun to play with.

Link to post
Share on other sites
1 hour ago, straight_stewie said:

I still can't figure out why people are so afraid of assembly. I'm not going to claim that it's actually useful to know from an application development perspective, but I've always found assembly fun, and easier to grasp than higher level languages. Granted, most of my practice is with AVR and PIC. I can't stand x86.

If you're doing systems programming, assembly works just as well as any other higher level language because systems programming is often controlling the hardware itself. It's when you start getting into programs that are providing a service to the user that it tends to get more hair pulling. Most people from what I gather here want to do applications programming, which I'd argue assembly less suitable than other options.

Link to post
Share on other sites
54 minutes ago, Kamjam66xx said:

I got a course on udemy for Assembly with ARM chips and im excited to do it. But i gotta finish learning openGL, vulkan, and how to make game engines first. Still i completely agree that low level stuff is way easier to understand.

 

OpenGL is low levelish, and its a blast. Its fun to play with.

Good for you if you have fun with it.

 

Personally 99% of the time i have to work on it is to fix bugs that only happen on AMD cards.

And bug chasing is ... let's be polite and calm... frustrating. it's not like DirectX is better, far from it lol.

 

I'm saying that rather because OpenGL usually the worst kind of work in my case. Empty double buffer for no reasons, Driver failure, Cannot draw line of 17 units wide but i can at 15,16 and 18 and all that because we are on tuesdays on a half moon between 4 pm and 9:12pm.

Link to post
Share on other sites
1 hour ago, Franck said:

Good for you if you have fun with it.

 

Personally 99% of the time i have to work on it is to fix bugs that only happen on AMD cards.

And bug chasing is ... let's be polite and calm... frustrating. it's not like DirectX is better, far from it lol.

 

I'm saying that rather because OpenGL usually the worst kind of work in my case. Empty double buffer for no reasons, Driver failure, Cannot draw line of 17 units wide but i can at 15,16 and 18 and all that because we are on tuesdays on a half moon between 4 pm and 9:12pm.

Oh ive encountered a few things already, nothing really indepth yet... but the worst one wasnt even openGL, it was GLM. I was using glm::vec4 something, idr, anyways the VS 2017 compiler for c++ wont initialize the values of the martix if its contructor is called implicitly. It took forever to figure out, but i just called it explicitly to fix it.

 

I anxiously await the future headaches lol.

Link to post
Share on other sites
8 hours ago, Mira Yurizaki said:

Most people from what I gather here want to do applications programming, which I'd argue assembly less suitable than other options.

Trying to write actual applications in assembly will help you to not write inefficient shit code though.


Write in C.

Link to post
Share on other sites
43 minutes ago, Dat Guy said:

Trying to write actual applications in assembly will help you to not write inefficient shit code though.

Still dont know assembly but id bet that statement applies to c too, ya?

Link to post
Share on other sites
18 hours ago, Dat Guy said:

Trying to write actual applications in assembly will help you to not write inefficient shit code though.

depends on what you mean by "not shit code". From a high level language engineering point of view, assembly will give you 0 assistance towards clean code, which is a huge deal when collaboratively writing software, or writing large complicated architectures where OOP design decisions early on can either be a pain in the ass, or a blessing from heaven down the road.


Gaming build:

CPU: i7-7700k (5.0ghz, 1.312v)

GPU(s): Asus Strix 1080ti OC (~2063mhz)

Memory: 32GB (4x8) DDR4 G.Skill TridentZ RGB 3000mhz

Motherboard: Asus Prime z270-AR

PSU: Seasonic Prime Titanium 850W

Cooler: Custom water loop (420mm rad + 360mm rad)

Case: Be quiet! Dark base pro 900 (silver)
Primary storage: Samsung 960 evo m.2 SSD (500gb)

Secondary storage: Samsung 850 evo SSD (250gb)

 

Server build:

OS: Ubuntu server 16.04 LTS (though will probably upgrade to 17.04 for better ryzen support)

CPU: Ryzen R7 1700x

Memory: Ballistix Sport LT 16GB

Motherboard: Asrock B350 m4 pro

PSU: Corsair CX550M

Cooler: Cooler master hyper 212 evo

Storage: 2TB WD Red x1, 128gb OCZ SSD for OS

Case: HAF 932 adv

 

Link to post
Share on other sites
9 hours ago, Dat Guy said:

I prefer efficient code to "high-level clean" code - and assembly is quite good at that.

Time and place. Premature optimization is the root of all evil. An effective developer should know how to write both fast code and clean code. If you can write amazing fast code but it looks like barf and each time that code is touched there's a significant chance of defects being added, that's not a recipe for being a great developer.

 

As a general rule, lean towards writing cleaner more maintainable code, make sure the program is correct, then profile it, then optimize the bottlenecks until you meet performance requirements. If you optimize as you go, you risk spending time optimizing sections of code that aren't even bottlenecks, as well as potentially making that code harder to maintain for no benefit. 

 

That said, you can and should still write efficient clean code when possible. When we talk about readability vs performance, we are usually referring to places where you have to explicitly choose one or the other, because the only way to increase performance is to start making changes that hurt readability and add significant design complexity. If there's a way to write code that is highly performance while still being very clean and maintainable that's obviously the code you should write.


Gaming build:

CPU: i7-7700k (5.0ghz, 1.312v)

GPU(s): Asus Strix 1080ti OC (~2063mhz)

Memory: 32GB (4x8) DDR4 G.Skill TridentZ RGB 3000mhz

Motherboard: Asus Prime z270-AR

PSU: Seasonic Prime Titanium 850W

Cooler: Custom water loop (420mm rad + 360mm rad)

Case: Be quiet! Dark base pro 900 (silver)
Primary storage: Samsung 960 evo m.2 SSD (500gb)

Secondary storage: Samsung 850 evo SSD (250gb)

 

Server build:

OS: Ubuntu server 16.04 LTS (though will probably upgrade to 17.04 for better ryzen support)

CPU: Ryzen R7 1700x

Memory: Ballistix Sport LT 16GB

Motherboard: Asrock B350 m4 pro

PSU: Corsair CX550M

Cooler: Cooler master hyper 212 evo

Storage: 2TB WD Red x1, 128gb OCZ SSD for OS

Case: HAF 932 adv

 

Link to post
Share on other sites
On 1/9/2019 at 11:47 AM, LUUD18 said:

HTML and CSS isn't really programming. It's more front-end design. 

And you won't get a job easier than anyone else because it really depends on the kind of job. If you want to do complex back-end coding then none if this stuff is usefull (Except SQL) because most of them use C#, Java, C++, etc. 

 

For the OP: It really depends what kind of knowledge you already have.

If you already can think logically (if, else, etc) then I would advise to go with C# or Java.

If you are really new to it then you could start with Python.

I would advise you to stay away from C++ in the beginning because it's quite hard to begin with. C# is a bit like C++ but with C# a lot of things are already programmed for you. 

The thing is,  at least 9/10 IT jobs are web-app development based or mobile app development based, at least in this part of the world. It's hard to find a job with classic programming, some specialized programming and not to mention hardware/system related.

When it comes to IT jobs; 1st Web-app 2nd mobile apps 3rd networking 4th every other programming 5th sysadmin/etc 6th automation.

I'm a master of engineering in computer science and I don't want to work on web-apps and that's why I had trouble finding a decent job in the field I'm interested in (and have some expertise in) which is hardware related. Now I'm a senior IT advisor in a hospital but we have a small team so we do everything and I like it.

Link to post
Share on other sites
1 hour ago, 191x7 said:

 

Web stuff doesnt pay as good from what ive gathered, right? I was really suprised to look at job listings for people who work with shaders, openGL, vulkan, or like do robots and self driving cars and stuff. 

 

They pay wayyyy more a lot of the time. At least from what ive gathered.

Link to post
Share on other sites
5 hours ago, Kamjam66xx said:

Web stuff doesnt pay as good from what ive gathered, right? I was really suprised to look at job listings for people who work with shaders, openGL, vulkan, or like do robots and self driving cars and stuff. 

 

They pay wayyyy more a lot of the time. At least from what ive gathered.

Depends, as there are different types of web development. You can work in a small webdev shop and not make a ton, or you can work as a web developer at a large software company like Netflix, amazon, or google (or a myriad of other companies). For example where I work (a very large software company in the healthcare IT space), we don't have "web developers" vs "backend devs", we have "software engineers" of different experience levels (entry, senior, team lead etc.), and a "softwar engineer" might do pretty much anything, depending on the team they are on. We have teams that have a web focus, we have services/backend focused teams, we have security focused teams, we have C++ lower level teams, etc. The pay for each different type is only based on their performance and experience, and has nothing to do with the actual type of development you do, and people bounce between teams as needed.

 

Obviously not all companies work this way, and niche jobs will need niche requirements (you might need a masters or PHD and a very solid GPA with experience in shaders/CUDA to have a good shot at a to get a job at NVIDIA for example), but for "general software engineering" roles, your pay likely won't change if you happen to work on say node js instead of java or C++.

 

I guess the main difference is that the engineers i'm talking about can pretty much fill any role, and can make complex system competently, while the stereotypical "web dev" might only know html/css/php, to where can make a basic website, but not much beyond that. that's not to say those web devs couldnt LEARN, but the role that only needs that basic level of knowledge is one that I wouldn't expect to be on the same pay scale.

 

This is all just from my anecdotal experience and what i've seen, and as with anything, your mileage may vary.


Gaming build:

CPU: i7-7700k (5.0ghz, 1.312v)

GPU(s): Asus Strix 1080ti OC (~2063mhz)

Memory: 32GB (4x8) DDR4 G.Skill TridentZ RGB 3000mhz

Motherboard: Asus Prime z270-AR

PSU: Seasonic Prime Titanium 850W

Cooler: Custom water loop (420mm rad + 360mm rad)

Case: Be quiet! Dark base pro 900 (silver)
Primary storage: Samsung 960 evo m.2 SSD (500gb)

Secondary storage: Samsung 850 evo SSD (250gb)

 

Server build:

OS: Ubuntu server 16.04 LTS (though will probably upgrade to 17.04 for better ryzen support)

CPU: Ryzen R7 1700x

Memory: Ballistix Sport LT 16GB

Motherboard: Asrock B350 m4 pro

PSU: Corsair CX550M

Cooler: Cooler master hyper 212 evo

Storage: 2TB WD Red x1, 128gb OCZ SSD for OS

Case: HAF 932 adv

 

Link to post
Share on other sites
43 minutes ago, reniat said:

 

Right. Im in michigan. But ive noticed pay for this type of work seems very flat across the country. 

 

In my area ive seen job listings mostly between about 55k-100k. But the niche work around here is 90k-140k. The niche stuff was like shaders, computer vision stuff for ultrasound machines, self driving cars for ford and some chinese company, and a few others i dont remember.

 

That to me represents a higher cap on pay, which personally interests me a lot! 

We do have amazon in detroit.

 

The phd thing is weird to me, because ive been told about people hiring people with phd's and a lot of the time they dont do very well. 

 

Maybe its the information overload? Im still learning about this type of work, so pardon my being so curious.

Link to post
Share on other sites

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


×