|
KarstenK wrote: Javascript best
Two words that do not often appear together in the same sentence.
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Javascript has become significantly better with ECMAScript 6! And there are some powerful libraries like NodeJS.
And when programming websites javascript is a must have.
Press F1 for help or google it.
Greetings from Germany
|
|
|
|
|
I have to agree with this. Two years ago, I despised javascript. Now I am starting to appreciate what it can do. Of course, I have to turn a blind eye on the uglies.
|
|
|
|
|
It's everywhere, it's not going anywhere, it's the basis and it teaches what the fluff you are doing. It's easy to fall into the glittery traps of the dozens new languages and frameworks out in the market daily when you can't see that it's all have been done before and that most ideas simply suck.
GCS d--(d+) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
my main concern about C being everyone's potential first is that already way more people think they can code C than actually can.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
My concern with Python, Java and C# is that it convinces people that they know how to write software (not only code, software) while they barely know what thery are doing.
And when their byproduct end up in production against all common sense it will become a PITA to the few competent people out there.
The other languages mentioned are basically useless trinkets, I will not even dwell on them as they omae wa mou shindeiru.
GCS d--(d+) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
that's just a problem with software development.
contrary to popular belief, we're not engineers, really.
thank the gods we do not build skyscrapers and bridges.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
codewitch honey crisis wrote: we're not engineers, really.
I have not heard this in many years, but it is so true. We are NOT engineers by any stretch of the imagination.
We have the idea of a Software Architect, and that is more fitting to the role, than Engineer, IMHO. 99.9% of us are just plain old boring software developers; programmers if you want to go old school.
|
|
|
|
|
I was a software architect. don't believe the hype. LOL
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
I am a software architect, and I don't believe the hype. However, companies like business titles and that is the title I have.
|
|
|
|
|
haha right?
they do love their titles. After Microsoft, I worked for an outfit called Sogeti, and they were basically a software architecture and consulting group.
So there were no "devs" on staff, but a lot of people who used to be devs.
It was a weird environment. I eventually bailed because I didn't like being flown to places to "consult" (read, try to rescue mismanaged projects well after they've deathmarched) and basically being used as a corporate axe because the people that screwed up didn't want to be the ones to do the firing.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
I'm a software engineer and I won't ever say I am a "programmer" ever again. There must be structure and some sort of formality to what's built and too many "programmers" lack any of it.
codewitch honey crisis wrote: thank the gods we do not build skyscrapers and bridges.
GCS d--(d+) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
You are not an engineer, even if you identify yourself as an engineer.
6 Different Types of Engineering Jobs[^]
also, the definition of engineer does not include "software".
If you design software, than you are a software architect at best, like me. You can have the Software Engineer title, as most companies do that, but don't kid yourself for one second that you are an actual engineer.
Just saying.
|
|
|
|
|
Software does not live in a limbo, it interacts and control physical objects that have safety concerns and timings to be respected; it interacts with other software and software infrastructure. All of that is way beyond the common Software Architect because it needs any knowledge of the problem dominion, may it be mathematical, mechanical, electrical or chemical.
Of course web, UI and desktop applications developers do not need any of it but they are only a small part of the software related industry. ISO 26262 is *not* for programmers, the various aeronautical and aerospatial normatives on software developement are not for for programmers, even the processes that are to be followed are not addressed to programmers. It's engineering plain and simple - having rigorous, predictable and highly testable models way before putting them into instruction sequence is the true core of software engineering.
GCS d--(d+) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
If it helps you sleep at night...
|
|
|
|
|
Slacker007 wrote: also, the definition of engineer does not include "software".
There are many, many more types of engineers. I studied computer engineering in college. A 5 year graduation program which is a mix of software, electric and physics.
But there are many more... Environmental, Hydraulics, Materials, Production, etc...
To alcohol! The cause of, and solution to, all of life's problems - Homer Simpson
Our heads are round so our thoughts can change direction - Francis Picabia
|
|
|
|
|
Interesting.
So the guy that designs the hardware for a flight simulator is an engineer, but the guy that designs the software that makes it work is not.
1. An Architect focus on aesthetics, including appearance and function.
2. An Engineer oversees the implementation of the architect's plans.
3. A Programmer is someone who can write code. How well depends on experience.
So which of the above are you?
In my experience, most people implementing the code fall into category 3. To ensure quality, they should be overseen by someone who falls into category 2. As for category 1; many people that fall into category 2, also fall into category 1.
You be the judge.
INTP
"Program testing can be used to show the presence of bugs, but never to show their absence." - Edsger Dijkstra
"I have never been lost, but I will admit to being confused for several weeks. " - Daniel Boone
|
|
|
|
|
Coding is something of a black art.
And any engineer would scoff at our lack of rigor.
Compared to the hardware guys, our QA is stodgy, at best.
TDD improves this some. And I say that as someone who doesn't do TDD unless forced.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
There are very very few situations in which software must be engineered. Flight control systems, medical monitoring systems, etc.
I laugh whenever someone calls himself a Software Engineer.
|
|
|
|
|
Manifacturing, automotive... I work only on these kinds of software and I don't laugh when I get free ranging coders with no respect for structure.
Besides, software must be maintained. Leave it in the hands of "those who code" and it becomes impossible in the long run, with constant costs for substitution or worse, legacy maintaining.
Coders are slowly dying in the industry, software engineers are much more requested. Being capable of analyzing, detailing and following a process is conductive to realeasing workable software on time and with profit. Software engineering is made of measures, models, previsions, traceability and documentation.
Algorithm developement is not, but it's sadly a niche activity.
GCS d--(d+) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
I agree with that, generally, but at least C# gives you the capability to create solid code.
As much as python is great, languages like that, and like BASIC whose grammars are Broken As Designed teach bad habits.
Now, C and C++ are so flexible it's easy to code with bad habits. Very easy.
C# is a nice happy medium. It's flexible enough to be powerful, and to support "real" coding.
It's simple enough to make it easy to have good practices.
I think C# does a better job of fostering good dev habits than C
I think with C you better already have a handle on your habits. And it takes time to get them right.
An example is putting constants before vars in comparisons like
if(0==i) ;// do stuff there
instead of if(i==0)
This kind of thing is important in C to avoid accidental assignment
in C# it's not as big a deal.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
codewitch honey crisis wrote: An example is putting constants before vars in comparisons like
if(0==i) ;// do stuff there
instead of if(i==0)
True, but when you use warning level 4, like I always do, the compiler catches that for you. It didn't always do that though, that's for certain. Not until the concept of lvalues and rvalues came.
"They have a consciousness, they have a life, they have a soul! Damn you! Let the rabbits wear glasses! Save our brothers! Can I get an amen?"
|
|
|
|
|
Having to learn pointers in C teaches you how "references" work in C# and Java.
Better and quicker than learning assembly.
Most modern languages run on top of libraries that are coded in C.
I think C is a great learning language to understand memory, variables, call stack, etc.
I would not do any large scale projects in it though.
Knowing C function pointers and the like makes the concept of a class v-table something that you should be able to visualize quite easily. No magic!
|
|
|
|
|
I liked C because it can teach so many fundamentals. When students learn higher-order languages, they should have an appreciation for the magic going on underneath.
Software Zen: delete this;
|
|
|
|
|
The answer entirely depends on whether the purpose of learning is for the academic reasons; or for understanding how computer works, or whether you are looking for a job.
I have a personal choice of going toward C# for professional stuff, this language has really proven to be a game changer in every way. You can use the same language to write simple console programs, web applications, microservices, machine learning, games, mobile apps, cloud-native apps, what not. This was the first language I learnt, and it really gives a lot of power and support for the programmer, while abstracting away the unnecessary stuff—*coughs* InputStreamReader *coughs*.
For academic reasons, I might recommend JavaScript—hold on, hold on—as most of the times, the concepts are recursive. For example, a hello world in C is,
#include <stdio.h>
int main() {
printf("Hello world!\n");
} What does that include do? What does it mean to have an int with main. Now this point leads to a very serious problem with today's educational system, and that is, most of the times teachers would leave the int out and write it with void. Woah, hold on. That causes the students to think that it is okay to ignore the standards and write the code that compiles.
There are several issues with JavaScript, but at least it is better than Python, in terms of familiarity with other languages like C, C++ or JavaScript. If not JavaScript, then go for C++ or C.
But hey, either them C or C++. Do not involve pointer to structure, that uses a reference type based on a macro. Just don't do that!
Feel free to disagree, and enlighten me, please.
The sh*t I complain about
It's like there ain't a cloud in the sky and it's raining out - Eminem
~! Firewall !~
modified 1-Apr-19 1:40am.
|
|
|
|
|