Your View on Programming
So here it goes. What's your view on the current state of programming? What do you think it'll look like ten years from now?
I know i've only been learning c++ for less than 3 months and have a covered some basic stuff. I don't know why but i feel it isn't as easy as it should be. A month ago, if someone had asked me what beginner programming language to choose, i would have recommended c++ but if i were asked now, i would choose what ever choice was already there because it seems the all do things the same way. I know they're different and we have compiled, interpreted, high, low, general languages etc.
I considered vb an OO language because of the way it did things, allowing me to use objects but that was then.
My idea on programming languages in 10 years is declarative, intentional and visual languages (they come really close to my . . .).
Another thing, what do you consider real programming and real programming languages? For me, if it can make the computer do things and can be used to create things with the computer, it is a programming language. Some don't consider Html, CSS and visual programming languages real programming languages.
I still can't believe google chrome browser has around 10M lines of code and uses about 28 languages. In 10 or so years, it should be possible with 1 or 2 languages and less lines.
Anyways, this is my opinion. What's your opinion? What do you think/feel/want programming to be like?
Thanks for replying and reading.
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32
--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
We already have "visual" languages.
Visual Basic
Visual C
Visual C#
( to name a few )
...
It gets even more visual than that.
Stencyl and a few other engines use drag-and-drop programming .
My definition of a "real programming language" is any language that is appropriate for what you are doing.
Example:
Ruby would not be a good language to run a texture engine for a 3D game, but is perfectly good for rendering web pages.
What's the future of programming?
More "limited use" scripting languages, and difficult-to-use libraries.
I cannot remember the books I've read any more than the meals I have eaten; even so, they have made me.
~ Ralph Waldo Emerson
You didn't have to use pointless. Infact, there was no need for pointless.We already have "visual" languages.
Visual Basic
Visual C
Visual C#
( to name a few )
...
It gets even more visual than that.
Stencyl and a few other engines use drag-and-drop programming .
My definition of a "real programming language" is any language that is appropriate for what you are doing.
Example:
Ruby would not be a good language to run a texture engine for a 3D game, but is perfectly good for rendering web pages.
What's the future of programming?
More pointless scripting languages, and imposable-to-use libraries.
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32
--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
Nathan, chill out. Your forum etiquette needs some work -- I'd normally not say anything, much less in public, but you have a serious pattern of misuse of these forums.
To start, your signature is huge, and full of stuff no one cares about -- between the full quote and your signature, you've just added an entire page of scrolling for everyone who reads this thread (and just your signature alone, nearly half an additional page each time you respond). And all to reply with one line that doesn't add anything to the conversation and which borders on combative. If you really want to share a quote, pick one you can fit in one or two lines of your signature without additional line-breaks, but its really not necessary at all. You don't need to share quotes to be inspired by them, and everyone is inspired by different things.
Second, lets not quote entire posts to respond to one line. We have selective quote for a reason. People are able to follow the conversation just fine.
Third, you don't need to respond to 'correct' someone, or to ask trivial questions to clarify or shift the question slightly. I've seen you do this over and over. This isn't a chat room where people are expected to respond in a conversational way, forums afford a certain timeline where you can take some of your own time to research things that are brought up on your own time, before you come back with a follow-up. People will be much more willing to help you if you slow down and help yourself, and ask intelligent follow-up questions, rather than the first response that comes to mind. You need to do your own homework, we denizens of gamedev.net is not a substitute for google, nor your personal tutors.
And I'm not trying to be a jerk -- but honestly I'm getting to a point where I cringe at threads you've started or have become active in, because I know the signal to noise ratio is going to be so low. If myself or others start avoiding your threads, its not just you who won't get your answers, but everyone with the same question. Additionally, you're unnecessarily taxing the gamedev.net infrastructure -- consuming additional bandwidth, creating extraneous rows in the forum database, its all marginal, sure, but it adds up. Its like littering -- one person doing it is not a big deal, but if everyone did it it would be a problem, and when people see others doing it, they thing its fine for them to do so as well -- so be a part of the solution, not a part of the problem
It's totally OK to ask more questions until you understand, but its not OK to expect everyone to tell you everything. You need to do your part; anything less is disrespectful of the community here.
throw table_exception("(? ???)? ? ???");
And just to be absolutely clear -- I'm trying to help you change your behavior in a more constructive direction, not chase you out of gamedev. Everyone is welcome here, but you do need to make an attempt to be a good citizen here.
throw table_exception("(? ???)? ? ???");
And just to be absolutely clear -- I'm trying to help you change your behavior in a more constructive direction, not chase you out of gamedev. Everyone is welcome here, but you do need to make an attempt to be a good citizen here.
no problem. The selective quote doesn't work on the phone i'm using. It just shows "clear", "javascript" or "nothing selected".
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32
--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
Generally speaking, software development has overall gotten more challenging as time has passed, and I really don't see that trend reversing. There are numerous reasons for this, some of which are:
- The demands of the customer base more often than not increase and really never decrease.
- The hardware architectures we develop upon get more and more complex, and their support packages hardly ever improve enough to completely hide that complexity.
- The software architectures we develop upon get more and more complex.
- Interoperability becomes more and more complex, and more and more of a rat's nest.
All of those points can easily be broken down into numerous sub-points and elaborations. Ex. multi-core hardware architectures and the challenges of concurrent programming. While more languages are providing better support for concurrent programming, and more third party libraries are becoming available to offer various higher level concurrent solutions, the reality is any developer working on software that relies on concurrent operation needs to know concurrent programming. They don't necessarily have to become experts in concurrent programming, but they need to become competent in it.
30 years ago the average developer didn't have to deal with multi-core environments, network protocols, 3D rendering, Facebook integration, cloud storage, smart phones and tablets, or Windows 8.
Also, I'm highly skeptical that Chrome was developed using 28 programming languages. I'd like to see the source of that claim.
I'm not sure this can be addressed without improving general computing literacy and coming up with a new UI paradigm that will enable this, but one problem I'd like to go away is integrating two different programs. I want something like the UNIX model, where two programs that were never designed to work together can be used in harmony - except that ordinary people can achieve this, not just command line wizards who have mastered esoteric utility names and the arcane syntax necessary. On the web, while you're at it.
My idea on programming languages in 10 years is declarative, intentional and visual languages (they come really close to my . . .).
Declarative languages are already here. They very useful for certain things, configuration, UI design, etc.
I don't really know much about intentional languages, sounds good in theory, not sure how well it works in practice.
Visual languages have been tried, and the consensus is they quickly become too unwieldy for anything but the most trivial of programs.
Note: "visual" as in Visual Basic and Visual Studio is a marketing term, and has nothing to do with "visual programming"
Another thing, what do you consider real programming and real programming languages? For me, if it can make the computer do things and can be used to create things with the computer, it is a programming language. Some don't consider Html, CSS and visual programming languages real programming languages.
The term "real programming language" is meaningless. I suppose you could argue that a "real programming language" is Turing Complete, but what's the point? Languages are tools. Some are better suited for certain tasks than others and some are just bad at everything (PHP, for example), but still useful for getting the job done.
I still can't believe google chrome browser has around 10M lines of code and uses about 28 languages. In 10 or so years, it should be possible with 1 or 2 languages and less lines.
Again, both are meaningless metrics. Chrome is certainly possible today with 1 language and less lines of code. Hell, you could write the "chrome builder" language that has only 1 line ("buildChrome()").
The question is not whether it's possible to do something with x languages and y lines of code, it's whether it's better (more maintainable, performant, etc) to do so.
There's no real "one future of programming". It's become so broad a field, that we'll continue to see diversification of techniques in web programming, mobile apps, server backends, embedded devices, games, etc.