|
I don't know of very many designed languages - and those I know of, has more or less flopped.
Now, I don't mind that Ada flopped; it was a mastadont both conceptually and implementation-wise.
APL is so curious that you never could expect it to succeed (but it wa fun to play with )
But I miss CHILL... A really well-designed language: Lightweight, yet with all the facilities for multi-threaded programming designed into the language. Clean exception handling. A type ("mode") system that beats almost any other language. Some details of the flow control structures that makes it great. Syntax is very well suited for catching errors, even semantic ones. Especially considering that the first version was standardized as early as 1980 makes it a remarkable language.
There are other designed languages as well, but the vast majority are evolved languages. Some, like Python, may not have done all the evolution steps by themselves but adopted large parts of their syntax from its predecessors, which have been through a significant evolution. It is not like the designers brought up a pile of blank sheets, agreeing "Let's do it right from the very beginning, this time!" - more like adding and removing features from an old language so much that it ends up as a "new" language.
|
|
|
|
|
Can't you just do C# in Visual Studio Code like a normal beginner?
If you can figure out how to set up Visual Studio Code to compile, run, and debug your code, you will have gained a valuable real-world practical skill.
If you get started with .NET Core 2.1 today (= the thing that runs your C# code) you'll be somewhat good at it when they reach version 3.
Version 3 will introduce a bunch of UI stuff. If you time it right, you can get on that gravy train when it starts chugging.
If I have to pick something from that list, do Python.
But don't get bamboozled: starting with python is really easy, but it takes forever to get good at it.
C# is harder to pick up, but you get good at it much faster.
Also, number 2 is a raging dumpster-fire, number 3 ian't a damn programming language, and number 4 is spelled wrong.
But those are just details you can safely ignore for now. We all have to start somewhere.
|
|
|
|
|
KBZX5000 wrote: and debug your code
Still surprised at how many developers don't know how to effectively debug code. During my career, I've run across more than one "experienced [in years] developer who didn't know how to run a debugger and so used a form of console output and/or logs.
|
|
|
|
|
That made me laugh.
It's funny because it's true.
Debugging and reading the damn errors you get are essential skills beginners often don't see.
It does tick me off immensely when a developers ignores every error message / log and starts speculating on what went wrong instead.
It usually end up with me yelling at them to:
A) become literate
B) investigate "what the words mean"
C) do their damn job
Pet peeves.
|
|
|
|
|
Examples of what you want to do goes a long way to help with suggestions.
sammygirl wrote: see creations come to life
You could write the game of life John Conway's Game of Life[^] in language. Some you might spend more time on getting the visuals to work, and others may be the reverse where visuals take a short time, but the code behind is more tricky.
If you like things like this Draggable | jQuery UI[^] and want to make a picture puzzle
- HTML + Javascript
- you can skip the "hardcore" css for inline styling on first pass.
- 2-3 days (10 hours) on the middle amount of time to do something.
- then 2+ years of adding features to cloud save, different sized pieces, cross platform support, fixing that weird bug your number one user keeps getting but you cant replicate. Customizable colour schemes, individual user styles, performance inprovements, ai helper, machine learning auto solver, color bind support, other alternative usability support, rewritting it from scratch.
|
|
|
|
|
1) HTML/CSS - HTML is simple, and you can learn enough to get by in an afternoon. Same with CSS, but expect things not to look like you expect for a while, till you get the hang of it.
2) Javascript --Specifically, ES6 or later, or better, TypeScript. It has the lowest barriers to enter (no compiler; just a text editor & browser), and give you the basics of OO design.
3) Python.
4) Php -- actually, I can't offer any reason to learn PHP.
Truth,
James
|
|
|
|
|
VB.net
I currently have a high school sophomore/Junior interning for me who had no idea about programming to start with. I thought PHP/html/js would be a good start, following a book. Boy was I ever wrong.
We switched this intern to VB.net and the immediate feedback and seeing results made all the difference. And I think the language is far easier to pick up than C#, while allowing you to do everything you need to.
This is not necessarily what I would have a true CS student learn. There is a value to continually hitting your head against a wall and feeling the relief of breaking through only to do it again, that you experience with other languages. This is how I describe development to new engineers. Learning this fortitude is a useful skill.
But for a self taught newbie, I would go with VB.net. Once you know one language, the rest are all about understanding various types of syntax.
<hr>
"Qulatiy is Job #1"
-- modified 9-Jul-18 14:23pm.
|
|
|
|
|
100% Agree!
"Go forth into the source" - Neal Morse
|
|
|
|
|
One more thing about C++ or C#; being able to step through your code in a debugger is invaluable for learning and the Visual Studio debugger[s] beat all others by a very wide margin. (JetBrains makes excellent IDEs, but I haven't tried PyCharm, so perhaps it may qualify, though I still don't like python as a beginner language.)
|
|
|
|
|
I think HTML and Javascript are your best bet, for a number of reasons:
1) You visually see changes on a website that you're building, as opposed to just printing "hello world" messages to a shell.
2) Your work is publicly available via the web (assuming you put it on a real website), so it's easy to ask for help/feedback from friends even if they're far away.
3) It's easy/cheap to get started. You can buy your own web domain for $20/year, and a basic hosted website for $6/month or so.
4) You only need a text editor like Notepad to start writing code; you don't need to worry about compiling it.
5) It gives you a good sense of how the web stuff works, how the browser talks to the server.
6) The skills are in high demand right now.
I wouldn't get into any back-end languages like PHP or Python at this point. Learn how to manipulate the HTML using Javascript, and you'll learn a lot.
|
|
|
|
|
sammygirl wrote: I want to do something related solving, building, not just dealing with data That's kind of vague.
There's lots of really interesting and cool things you can work on with any of those languages. Since those things are obviously not what you're interested in doing, and you haven't been specific, then I suggest you look at job postings for the kind of work you want to do. Learn the language that seems to come up the most in them. That won't get you the job you want, but it's a step in that direction.
|
|
|
|
|
Scratch - Imagine, Program, Share
Scratch uses "components" to program (versus "code"). It's the future.
(See Unreal Game Engine and Lego Mindstorms EV3 for other examples of component / blueprint based programming).
"(I) am amazed to see myself here rather than there ... now rather than then".
― Blaise Pascal
|
|
|
|
|
My two youngest took a class at Utah Valley University called "CS 1030 Foundations of Computer Science". It starts with the real basics--what is a hard disk, what is memory and so on. By about the halfway mark, they started rudimentary C# programming. I don't know your age, but my daughter took this class in high school through an extension program (where she could get both high school and college credit.)
Check with your local university or community college to see if they have a similar course. They may also have an online version.
Stanford has free online courses: (Stanford University • Free Online Courses and MOOCs | Class Central[^]). Anyone taken any of these?
EDIT: This looks very similar to the class my kids took: Reviews for Computer Science 101 from Stanford OpenEdx | Class Central[^]
|
|
|
|
|
What is your goal? Do you plan to make a career as a software developer? Are you just wanting to learn what programming is like? How much experience do you currently have, and what level of understanding do you have of how computers function?
Many people on this forum are recommending C# (primarily because this is a Visual Studio/C# heavy forum). If you are just wanting to learn the basics of simple programming, learning C# to create simple programs is a little like using a sledgehammer to drive in a thumbtack. While I don't have much experience with Python, I understand it to be a nice interpretive language that will provide you with immediate feedback. The various facets of C#, and the added complication of a compiler make simple introduction daunting.
On the other hand, before you would enter any plans for a profession, obviously, you would need to learn MUCH more than Python.
|
|
|
|
|
The track you will choose will depend on your interest. If you prefer frontend brush up your skill in html/css then to JavaScript and later on you move it to Php. However, if you prefer data science, the go for python but try to know a lit bit of html.
|
|
|
|
|
... I thought it might fit me, and some of our other senior bike riders: Sons of Anarchy T Shirt[^]
Sent from my Amstrad PC 1640
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Amen brother
Everyone has a photographic memory; some just don't have film. Steven Wright
|
|
|
|
|
Depends - what are you riding? Wheel chair or imperial walker[^]???
Anything that is unrelated to elephants is irrelephant Anonymous
- The problem with quotes on the internet is that you can never tell if they're genuine Winston Churchill, 1944
- Never argue with a fool. Onlookers may not be able to tell the difference. Mark Twain
|
|
|
|
|
That needs to become a thing. With buttons to fire the laser cannons and thumb toggle for turning the head. Pew, pew!
|
|
|
|
|
You calculate that your model will take 3.5 billion times the age of the universe to run.
cheers
Chris Maunder
|
|
|
|
|
Maybe you just need to code it in assembler?
Sent from my Amstrad PC 1640
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
That should be plenty of time for it to complete! What's the rush?
|
|
|
|
|
If you need optimization help, you could post a question in Q/A...
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
On the bright side, by the time anyone notices the output isn't accurate that becomes somebody else's problem...
|
|
|
|
|
It won't matter once they invent time travel, so just make that an assumption in your model and you're good to go.
|
|
|
|