Introduction to programming it only gets worse doesn't it.

Status
Not open for further replies.
I'm talking about what actual people do when building actual projects in the real world here. I know there are plenty of corners on the internet where people will talk about The Coming Scala Revolution (or whatever) and believe it means something, but the reality is that the web runs on JavaScript, PHP, Python and Ruby and there's very little chance that's going to change in a meaningful way in the near future.

Ah, what a beautiful new dawn this will be.
 
As soon as I see bashing on C++ or java in this thread, I realise it is all fake programmer in here. Or just student who take couple of class on programming and claim they know the world.

Have you ever met real programmers? We are equal-opportunity bashers.
 
The first few months are just straight Googling every error that gets spit out. Then after that it gets to be more time between Googling.
 
I don't know why they are still teaching Java in introductory class.

Easy. It's incredibly easy to use, while still powerful. It's used everywhere in enterprise and even outside of it. It's used in big data, which is growing massively. It has support for every major SE principle, design pattern, etc. It has support for inheritance, polymorphism, interfaces, abstraction, etc. The syntax is the basis for Android. What you learn can be easily translated to just about any other language. It's platform agnostic.

Java is one of the most diverse and usable languages out there. I don't get to use it much outside of Android or Hadoop, but I can still appreciate it's usefulness.

OP: Setting up the environment can actually be more aggravating than programming. Once you get passed that, you could be okay. Oh, and use Netbeans <3
 
You don't get to choose your language in the real world. Most of the languages are similar. It doesn't matter.

I miss Visual Studio and C# :-(

Working in IntelliJ with Node.js these days. All because I said yes to building an android app 2 years ago then got moved into the service side after completing it.

Ah Visual Studio, you will always be my one and only.

FE: Yeah I know node.js works in Visual Studio, but the project we're running has a ridiculous dependency tree no one fancies (READ: has the time to do and test) shifting to npm 3+ so the tree depth is too high for Windows' path limit.
 
I'm talking about what actual people do when building actual projects in the real world here. I know there are plenty of corners on the internet where people will talk about The Coming Scala Revolution (or whatever) and believe it means something, but the reality is that the web runs on JavaScript, PHP, Python and Ruby and there's very little chance that's going to change in a meaningful way in the near future.

I don't think we even need to change from these languages. Developers just need to learn how to actually code instead of importing 50 libraries to every project. Especially with JavaScript.
 
Top 20 replies by Programmers when their programs don't work

...

Yup

031b11a5e7a6f752ddde008e257d1070c30e10ec1c7617d3ae1a309493d75f84.jpg
 
I'm talking about what actual people do when building actual projects in the real world here. I know there are plenty of corners on the internet where people will talk about The Coming Scala Revolution (or whatever) and believe it means something, but the reality is that the web runs on JavaScript, PHP, Python and Ruby and there's very little chance that's going to change in a meaningful way in the near future.

The fact that we've build our world with cruft isn't an argument to be complacent. Of course it will be around forever, there is a reason why the big boxes are pushing hard to rebuild the web stack. In fact it's happening with the graphics stack with mantle. It's happening with systems languages with D and Rust. Quite simply there is a need and desire to leave us with better options 10-20 years down the road. If you think Javascript was even remotely competent or useful during it's inception you'd be crazy. But it found it's niche and support and here we are. Once again, we are laying the foundation for the future. Part of that is by abandoning dynamic, interpreted languages whose main boon was a strong uptake of early adopters who were first in the race of building semi-competent web frameworks.

I don't think we even need to change from these languages. Developers just need to learn how to actually code instead of importing 50 libraries to every project. Especially with JavaScript.


Sounds like someone who doesn't want to learn a new language, there is no shame in using libraries or frameworks. What is a shame is being complacent in the push for clearly broken languages. Why does nobody write in vanilla.js? Because it's a god awful piece of shit of a language. It's just the best damned supported one. Look how long it's taking to kill flash, but we'll get there, and it's coming fast. Javascript will see it's day.
 
Top 20 replies by Programmers when their programs don't work

20. "That's weird..."

19. "It's never done that before."

18. "It worked yesterday."

17. "How is that possible?"

16. "It must be a hardware problem."

15. "What did you type in wrong to get it to crash?"

14. "There is something funky in your data."

13. "I haven't touched that module in weeks!"

12. "You must have the wrong version."

11. "It's just some unlucky coincidence."

10. "I can't test everything!"

9. "THIS can't be the source of THAT."

8. "It works, but it hasn't been tested."

7. "Somebody must have changed my code."

6. "Did you check for a virus on your system?"

5. "Even though it doesn't work, how does it feel?

4. "You can't use that version on your system."

3. "Why do you want to do it that way?"

2. "Where were you when the program blew up?"

And the Number One reply by programmers when their programs don't work:

1. "It works on my machine."

Yup. #wontfix
 
So I'm on my first day of intro to programming. The very first assignment is to create the Hello World "program" and I can't even get javac to work. I googled my error- 'javac' is not recognized as an internal or external command, operable program or batch file- and set my PATH in environmental variables and it still doesn't work. This isn't my PC, but I installed Java SE. It's Windows 8, but that doesn't seem to matter. It's very frustrating to be stuck on what seems to be a very simple problem. Really wish this wasn't an online class.

If it's anything like the intro to java course I took more than a decade ago as a freshman in college, yes. It only gets much worse.

"Hello World" is nice and simple. Immediately from there we got much more complex and without already having a decent background in coding it required a significant amount of catching up.

It was one of the most frustrating classes I ever took since it felt like the equivalent of a foreign language class but the lesson went from "Learn to say Hello in Spanish" to "Now that you can say hello and goodbye in Spanish, write a full length novella by next week." If you already knew Spanish, you were golden. If not, well, good luck! And if you use google translate, you're going on academic probation for cheating.
 
I never had a problem with the technical stuff. After several classes (circa late 90s) in C, C++, COBOL, VB, etc., I decided that programming was boring as hell and I didn't want to do it the rest of my life so I transitioned to general IT instead of development. Don't regret it.

Top 20 replies by Programmers when their programs don't work

You forgot one:

- "I'll need the customer's entire database to troubleshoot that problem" (even though the database is 47GB and contains highly-sensitive data)
 
As soon as I see bashing on C++ or java in this thread, I realise it is all fake programmer in here. Or just student who take couple of class on programming and claim they know the world.

As a decidedly non-fake programmer with a Bachelor's and Master's degree in computer science, I've spent the better part of 15 years professionally writing and maintaining code in both C and C++ (among other languages). I have the right to bash it - just because something's widespread and heavily used doesn't mean we have to like it. There's nothing worse in the world than opening some thousand line pile of C source code attempting to do data parsing and manipulation that a 10 line Python script could do - doubly so when said code has memory leaks that would easily have been prevented (or at least reduced by 99%+) with nearly any other modern language. CPU and memory resources are abundant enough that using even something like C# to create applications that traditionally would have used C/C++ makes sense and leads to fewer headaches - I'm paid to solve problems, not debug obscure memory allocation issues.

On the other hand, I don't get the Java hate. I'm not a fan of the current owners, and the whole applet/Java in the browser thing was a huge mistake, but it's a perfectly serviceable language for most tasks. While the earliest CS classes might be better served by a language like Python, Java is still a decent progression from there (my undergrad CS program used Java - in 1997!)
 
Top 20 replies by Programmers when their programs work at the first try

20. "That's weird..."

19. "It's never done that before."

17. "How is that possible?"

11. "It's just some unlucky coincidence."

7. "Somebody must have changed my code."

This is true too ;)

EDIT: @op : keep at it, programming is awesome and awful at the same time.
 
I've always wanted to start learning programming. I feel like at some point I would have seriously considered programming as a career but chose a different path instead.
 
I'm talking about what actual people do when building actual projects in the real world here. I know there are plenty of corners on the internet where people will talk about The Coming Scala Revolution (or whatever) and believe it means something, but the reality is that the web runs on JavaScript, PHP, Python and Ruby and there's very little chance that's going to change in a meaningful way in the near future.

+1

I have personally tried Go and while I don't despise the language it certainly has its own quirks. Rust is still pretty immature. Some of these languages may be better optimized to give me a jillion requests per second but I have never even come close to hitting the limit of Node or Python so it doesn't really matter to me. The tools/community around them are worth staying.
 
Top 20 replies by Programmers when their programs don't work

20. "That's weird..."

19. "It's never done that before."

18. "It worked yesterday."

17. "How is that possible?"

16. "It must be a hardware problem."

15. "What did you type in wrong to get it to crash?"

14. "There is something funky in your data."

13. "I haven't touched that module in weeks!"

12. "You must have the wrong version."

11. "It's just some unlucky coincidence."

10. "I can't test everything!"

9. "THIS can't be the source of THAT."

8. "It works, but it hasn't been tested."

7. "Somebody must have changed my code."

6. "Did you check for a virus on your system?"

5. "Even though it doesn't work, how does it feel?

4. "You can't use that version on your system."

3. "Why do you want to do it that way?"

2. "Where were you when the program blew up?"

And the Number One reply by programmers when their programs don't work:

1. "It works on my machine."

I say at least 50% of that. It worked yesterday often gets replaced by It worked 5 minutes ago.
 
Don't learn programming starting with Java, if you can at all help it. It's trash. Start either with a more user-friendly language like Python, or with something low-level like C++. Either one will teach you what you need (Python will be an easier transition, C++ will be throwing yourself in the lion's den but will help you learn important fundamentals first which will inform your later learning), and then you can move on to the archaic spaghetti dinosaur known as Java.

Also, LOL at all the C++ hate in this thread. C++ is fine, you just need to git gud. Most of its challenges are conceptual, not rote memorization of incongruous syntax and OOP implementations like Java.
 
How do people normally even start getting into programming?
Like I always imagined people just picked it up at some point growing up as a hobby but during college I had a lot of friends who seemed to have jumped into it fresh there and not before.
 
There will always be unexpected issues that you have to resolve, that's a part of programming and working with computers in general. A big part of programming is hitting these walls, figuring it out, and learning from it. I wouldn't recommend programming if you don't have patience.
 
What the fuck? OP, are you me? I've been stuck in the same shit and as a matter of fact was trying to start working on it right now haha.
 
Don't learn programming starting with Java, if you can at all help it. It's trash. Start either with a more user-friendly language like Python, or with something low-level like C++. Either one will teach you what you need (Python will be an easier transition, C++ will be throwing yourself in the lion's den but will help you learn important fundamentals first which will inform your later learning), and then you can move on to the archaic spaghetti dinosaur known as Java.

Also, LOL at all the C++ hate in this thread. C++ is fine, you just need to git gud. Most of its challenges are conceptual, not rote memorization of incongruous syntax and OOP implementations like Java.

Dismissing one of the most used languages in the world as "trash" is nothing but ignorant. There's a perfectly good explanation on the last page why Java is a great introductory language. You'll never be a great programmer if you keep up this attitude.
 
Don't learn programming starting with Java, if you can at all help it. It's trash. Start either with a more user-friendly language like Python, or with something low-level like C++. Either one will teach you what you need (Python will be an easier transition, C++ will be throwing yourself in the lion's den but will help you learn important fundamentals first which will inform your later learning), and then you can move on to the archaic spaghetti dinosaur known as Java.

Also, LOL at all the C++ hate in this thread. C++ is fine, you just need to git gud. Most of its challenges are conceptual, not rote memorization of incongruous syntax and OOP implementations like Java.

Even this man agrees

txHu0g8.jpg
 
Is programming smart to get into in your 30s as a career?
You'd be older than the average beginner just like any other field.

Just don't try to force it. Many people don't have the aptitude to program. There are still plenty of other tech fields if it doesn't fit well.
 
Don't learn programming starting with Java, if you can at all help it. It's trash. Start either with a more user-friendly language like Python, or with something low-level like C++. Either one will teach you what you need (Python will be an easier transition, C++ will be throwing yourself in the lion's den but will help you learn important fundamentals first which will inform your later learning), and then you can move on to the archaic spaghetti dinosaur known as Java.

Also, LOL at all the C++ hate in this thread. C++ is fine, you just need to git gud. Most of its challenges are conceptual, not rote memorization of incongruous syntax and OOP implementations like Java.

Did you just use "git gud" unironically?

Programming language snobbery is the stupidest especially since being choosy on the language is for programmers who don't have paying jobs. I have probably gone through 10 different languages at work all of them are great because they brought me a paycheck. Java is a great language to learn because it stays closely to object oriented concepts used by most modern languages and also because it widely used in the industry.
 
Don't learn programming starting with Java, if you can at all help it. It's trash. Start either with a more user-friendly language like Python, or with something low-level like C++. Either one will teach you what you need (Python will be an easier transition, C++ will be throwing yourself in the lion's den but will help you learn important fundamentals first which will inform your later learning), and then you can move on to the archaic spaghetti dinosaur known as Java.

Also, LOL at all the C++ hate in this thread. C++ is fine, you just need to git gud. Most of its challenges are conceptual, not rote memorization of incongruous syntax and OOP implementations like Java.
Really?
Sigh..
#teamNoLanguageIsAlwaysBadUsuallyProgrammersAee
 
As soon as I see bashing on C++ or java in this thread, I realise it is all fake programmer in here. Or just student who take couple of class on programming and claim they know the world.

Hey, programming in Java ain't half as fun as newer languages.
I'm a java programmer by day job, but that doesn't mean i actually like it.
My work's codebase is probably at fault
 
As soon as I see bashing on C++ or java in this thread, I realise it is all fake programmer in here. Or just student who take couple of class on programming and claim they know the world.

We have functional programming now in Java, we are a real, grown-up language ! *pout*
Currently coding my secrete, rogue-like game in Java. But yes, I agree, students should start with C++ and learn the hard way how memory work.
 
Don't learn programming starting with Java, if you can at all help it. It's trash. Start either with a more user-friendly language like Python, or with something low-level like C++. Either one will teach you what you need (Python will be an easier transition, C++ will be throwing yourself in the lion's den but will help you learn important fundamentals first which will inform your later learning), and then you can move on to the archaic spaghetti dinosaur known as Java.

Also, LOL at all the C++ hate in this thread. C++ is fine, you just need to git gud. Most of its challenges are conceptual, not rote memorization of incongruous syntax and OOP implementations like Java.

This. I would reccomend starting from C/C++ from there anything else will be easier(more or less depending on where you go from there), even if later on you don't find C/C++ that useful learning it solves some issues when dealing with other languagues.
 
I don't remember pointers ever being a big deal to me. I'm still not sure why pointers trip some people up. I can understand getting tripped up by many other parts of programming, but not pointers.

I don't know why they trip me up either. :( I just can't wrap my head around how to use them, no matter how much I try. I mean, I get the theory and the syntax and all that, but as soon as it comes to applying them actual code, I'm immediately lost.
 
I'm a fan of JS myself. Of course I've just started programming recently but I'm learning all on my own since I'm too poor to go to a school or a bootcamp. Also learning on my own and since I'm not sure if it's worth going into debt for either of those to get into the industry.

With that said I finally completed my 1st site last month and now feel way more comfortable opening up brackets and starting projects from scratch. Also totally trying to look for a job already and I basically have to sell on my soft skills alone since my hard skills are not up to point yet.
 
Dismissing one of the most used languages in the world as "trash" is nothing but ignorant. There's a perfectly good explanation on the last page why Java is a great introductory language. You'll never be a great programmer if you keep up this attitude.

It really has a lot of problems though. Just look at the annotation hell in your average enterprise application. Plus, a lot of programmers use tools like Lombok to hack in missing features, as half assed as it is.

But still, Java is the language I've used the most by far. Starting in school and now at work as well. It's absolutely fine for learning people the basics of OO programming. But now that I'm regularly using Groovy (with Spock) for writing unit tests, I can definitely see why people have issues with it. There's just so much boilerplate code.
 
Hay does anyone here do dsp audio programming with c++?

Also can someone explain to me why there are books like Computer Systems by Bryant and O'Hallaron that explain easy to moderate difficulty material in the most impenetrable way possible? And why all the dsp texts are somehow worse?
 
Not sure if these links have been dropped yet but did you know there are couple of great programming threads on the Community graveyard?

Come join us in the Programming thread to talk about how this integer is wrong in this spaghetti code http://www.neogaf.com/forum/showthread.php?t=475808

Come join us in the Web Dev thread to talk about how much modern JavaScript rules http://www.neogaf.com/forum/showthread.php?t=756776

There's also an indie game development thread on the gaming side
http://www.neogaf.com/forum/showthread.php?t=965454
 
Feeling pretty dumb. The instructor had some separate PDF instructions not under the assignment link. I'm supposed to use a program called textpad with Java. In textpad cntrl-1 compiles and cntrl-2 runs. So it's a lot easier than using command prompt. Thanks for all the helpful replies.
 
Pointers were insanely difficult for me to grok when I first encountered them in college. I think it was because of these two things:

1. I didn't have a proper education on how things are stored in memory, and what the process of dereferencing is actually doing.

2. C syntax for pointer operations was, and is, poorly designed. It's never seemed intuitive to me, making it much harder to understand what it's actually intended to do.

((union { float v; uint32_t r; }){(int)x}.r+0x1fffff>>21) - 496;

I don't know enough C for this...is that bitshifted value on the right being cast to a type that's a union of a float and uint32? And then 496 is subtracted?
 
Status
Not open for further replies.
Top Bottom