|
On March 06 2013 06:25 sam!zdat wrote:Show nested quote +On March 06 2013 06:23 hypercube wrote:On March 05 2013 19:13 dontgonearthecastle wrote: On the other hand, I can't see how the programming skills would help f.e. a cashier in a supermarket (assuming she started working as a cashier, and then signed for the classes). He/she won't probably won't see any connection between the code and the thing he/she does every day (because there is a hell of a long road between a simple code and a cash systems working).
It might help her find work when the store switches to self-checkout or some RFID based system in a few years and lays off all the cashiers. but why is "learn to code" the only "useful" thing anyone can think of to learn about these days?
You will have to ask someone who agrees with that statement.
Anyway, how many coding jobs can there really be?
No idea. Probably not many in the traditional sense of being a 'programer'. But I could see a future where most jobs require some coding, or close cooperation with someone who can code.
You gonna soak up all the technological unemployment with coding? I'm skeptical.
I'm not gonna do anything. These things are happening for better or worse. I suspect people who claim to know if the net effect is going to be positive or negative (and many people are making very clear predictions of a coming Golden age or impending social collapse) are actually making stuff up.
|
On March 06 2013 03:07 tehemperorer wrote:Show nested quote +On March 06 2013 02:08 SupplyBlockedTV wrote:On March 06 2013 01:58 HardlyNever wrote: Sorry if this is a bit off-topic but I was wondering what the general thought on what web-development falls under. I know some programmers that don't consider anything web-based as programming or coding, while others have a more mixed approach. In the broadest sense, it is programming in that you are telling a machine (a web browser) what to do, but it doesn't really do any heavy lifting like real programming does. To further muddy the waters there are things like php that are entirely web-based, but can be used to do "real" programming if needed.
I was wondering what everyone else's take on it was. As a web developer/designer I don't consider myself a "programmer" (even though I have taken programming courses), as that title can get pretty elitist, but I'm not sure what else it is besides "web developer," if anything. Bullshit. Following that logic only people that write machine code are real programmers.. because all other languages are just simplified versions of it... or maybe i should say that when you write c++ you are scripting, because it is all just simplified machine code :D.... ah well, im not a programmer so i might be wrong. He's right when he says as a web developer he doesn't consider himself to be a "programmer." There are a few reasons why: 1. Basic reason: look at how much a Java programmer makes compared to a front-end developer... I know I make at least 30,000 (no joke) more than the web devs at my work 2. Web languages aren't compiled languages, meaning there is a limit on how much of an individual machine those languages have control over 3. You don't need to know hardcore algorithms to solve problems as a webdev, and you aren't concerned with machine performance since the big company web-browsers are your platforms 4. Similarly, you don't need to know design philosophy, any design patterns, how to unit test, application deployment, database structure (normalization, etc.), application integration, etc., since all of that is pre-defined as a robust back-end application+database (on most big-time front-end applications)
Your reasons make no sense... 1) Your pay doesn't certify your capability. I'm sure there are web developers in the world that would earn 30K more than you. 2) Since when does your tools define your roles? Especially in modern age where 99% of programming is done within application frameworks (either in house or standards) and memory management. 3) Agreeable to a point but I think if you disqualify people based on complexity then you would need to disqualify just about everyone in the programming scene except for maybe the top 10%. Especially with web technologies being essential and prevalent in today's IT landscape. 4) What? No design pattern/unit test/data structure? what the? I'm not even a web dev but I know this is not true, the quality of web people you come across must be very low indeed...
|
When I first started programming in highschool, it was intimidating. see all the weird notations, numbers and whatnot like <include>, while(conditions){, if(conditions) and blah blah blahmade me think programming is hard because I have to remember so much crap. And then I have to worry about the actual programming afterwards! god this will kll me.
Not the case.
As a college student, I spend more time figuring out why the flip my program doesn't work. I'm spending more time breaking down what I need to do and work towards it and put everything together.
The programming is easy but long, just takes alot of time. Its the thinking and problem solving behind programming is what is challenging.
and when you do figure out the problem, you just feel so Einstein.
|
On March 05 2013 02:47 Tobberoth wrote: I personally feel that most people probably won't benefit from learning how to code. Coding is fun and rewarding, but there are few practical situations outside of certain professions. I mean anyone can learn how to do simple I/O and calculation with python, but what are they going to use it for? Fact is, most programs you might want to make are already available for free online, made by people who have coded for a long time.
It's like with most forms of manufacturing. You could go out into the woods and carve some wood and make your own bow... or you could just go out and buy a cheap bow which will probably outperform your homemade bow easily.. and when it comes to coding, you don't even buy anything, everything is supplied for free.
This is like saying people shouldn't try to learn algebra and calculus in school if they aren't going to become physicists or economists or whatever. Or that they shouldn't study philosophy if they aren't going to be a humanities major/lawyer/stuffy academic.
Learning to program teaches people problem solving and language comprehension in the abstract.
Most everything you could want is ready made if you can beg, borrow or steal. If you ever want to make or do something of your own, it helps to have fundamental skills that go beyond computing.
On March 05 2013 02:41 thedeadhaji wrote: But because the written and spoken language drives much of the world today, it's important to have a strong grasp of language, be able see how it is being used for or against you and be able to use it to your advantage.
The ability to read and write code is similar.
I'm having trouble with this. Programming languages allow us to define rigorous abstract machines, while human language is often used "for or against us" in very wishy-washy, inexact ways (think legalese). One of the first things you will realize when working as a professional programmer is that you are bound by things like truth and practicality, but the marketing people who direct your company are not. C can't lie but English can.
|
I think we should learn how to cook instead. A more valueable skill to have.
|
thedeadhaji
39489 Posts
>yeastiality
One example would be the capacity to understand and think critically about how "this thing in my hand" (phone) can record, track, and send data to some 3rd party against my will and what data we're giving up, what means we have against it if we disagree with it. At some point you'd want to think about how the data is being handled internally, and that gets to the code level of the device. Even without programming knowledge you can get to a point of "hey, I don't like what this thing is doing or can potentially do", but in order to think of "what can I do against it? What can be done differently", you start to need working knowledge of what is going on inside the guts of the machine.
For instance I deal with Android a lot in my day job, and you start to realize that while the current system is built in a certain way, there are many other ways in which the same, or similar functionalities can be realized through alternate implementations from the hardware layer through the driver, HAL, framework, and application layer.
|
Belgium6755 Posts
Totally agree. I really believe that we'll see programming as a pretty basic set of skills in future schooling.
I program even though I'm a graphic designer. It empowers me because I can make rapid prototypes etc. But I do believe that anyone can benefit from learning it. It's a certain logical way of thinking which gives people a mental model for dealing with all the digital stuff in the world today. And I find that it is a very good teacher for learning how to problem-solve in general.
Plus you're using a computer for its intended purpose! Hooray for universal machines.
|
As a technical writer most of our writing these days becomes produced as an XML along with a publishing server and stylesheets for easier output of different formats. Aside from the fact that knowing coding better would make it easier for me to decipher customer/dev/QE needs, I actually end up needing it as a technical skill for producing/fixing stylesheet errors, improving our technology, and fixing/knowing how the server works. You don't NEED to know it, but obviously if you know it and someone else doesn't, one person is more likely to be laid off than the other, and it both broadens your horizon in terms of work and also makes you more of an expert in your work field. This is just how our world is - technology is progressing, and you need to know how to use it to its fullest if you want to get ahead...
|
On March 05 2013 04:24 Roe wrote: I'm a research assistant at my university in the psych department, and my boss had me do this very mundane but also annoying task of looking at two lists of data, and seeing how much time each of the lists had for a certain variable in common. "a" 05 05 "a" 03 03 "b" 05 10 "b" 02 05
and so on. So she expected me to calculate it by hand, over and over again. And there were about 300 files I had to compare. So, thinking like a true programmer (being lazy) I wrote up a program that did exactly that, and I could simply input the filename and I'd have my values instantly. To my knowledge there wasn't any program that could do this, or that could do this as precisely and specifically as I needed, so I luckily could write one myself.
STATA, SAS, R, JMP - any statistics program really - can do that for you. Or perhaps I am not understanding the task you were given.
And no, writing commands in any of the abovementioned programs is imo not coding. I am able to do it without any formalized training, nor have I had any IT-courses. I am your run off the mill M.D. who admittedly grew up with a computer from age 5.
EDIT: To briefly comment on the OP. It would be a waste of time for someone like me to learn actual coding. I treat humans, not machines. What good would it do me to be able to write C? Coding seems to be the new buzz-education and whilst I do believe it will be more widespread in the future I honestly doubt that we are going to see any coding language being taught in primary school any time soon. Why do you think Apple are so popular? It is because of the intuitive use - allowing any dimwit to pick up an iPhone and navigate it fairly successfully.
|
damn i picked such a hip thing to do
|
On March 06 2013 15:16 Ghostcom wrote:Show nested quote +On March 05 2013 04:24 Roe wrote: I'm a research assistant at my university in the psych department, and my boss had me do this very mundane but also annoying task of looking at two lists of data, and seeing how much time each of the lists had for a certain variable in common. "a" 05 05 "a" 03 03 "b" 05 10 "b" 02 05
and so on. So she expected me to calculate it by hand, over and over again. And there were about 300 files I had to compare. So, thinking like a true programmer (being lazy) I wrote up a program that did exactly that, and I could simply input the filename and I'd have my values instantly. To my knowledge there wasn't any program that could do this, or that could do this as precisely and specifically as I needed, so I luckily could write one myself. STATA, SAS, R, JMP - any statistics program really - can do that for you. Or perhaps I am not understanding the task you were given. And no, writing commands in any of the abovementioned programs is imo not coding. I am able to do it without any formalized training, nor have I had any IT-courses. I am your run off the mill M.D. who admittedly grew up with a computer from age 5. EDIT: To briefly comment on the OP. It would be a waste of time for someone like me to learn actual coding. I treat humans, not machines. What good would it do me to be able to write C? Coding seems to be the new buzz-education and whilst I do believe it will be more widespread in the future I honestly doubt that we are going to see any coding language being taught in primary school any time soon. Why do you think Apple are so popular? It is because of the intuitive use - allowing any dimwit to pick up an iPhone and navigate it fairly successfully.
And what format would those those programs need your data to be in? That's something that someone with little coding would likely forget to think about. In some cases even though you have plenty of programs that do the same thing, you may need to completely reformat your data so that those programs could do their thing. For small things like that it's often easier to write your own program to do it than to figure out how to reformat your entire collection of files to a format that some other program can handle.
Like many people have said, programming has benefits for various different domains. On one hand, programming will teach you more about the hardware you are working with, whether it's a phone, a laptop, or a specialized piece of equipment. Beyond that though, programming has significantly improved my problem solving skills.
The real core of what programming actually teaches you is not how to get from point A to point B in some arcane language but instead, how to break a problem down into manageable pieces, and how to approach a problem that at first glance seems far too complex or difficult to solve. It's critical thinking in it's most distilled form.
Programming's problem solving is very useful with computers in general. Once you've learned a bit, all the mysterious errors, or confusing instructions for that new program you just bought suddenly make sense. And if they don't, you have a framework of knowledge you can rely on to try to figure them out.
|
On March 06 2013 17:22 Bobbias wrote:Show nested quote +On March 06 2013 15:16 Ghostcom wrote:On March 05 2013 04:24 Roe wrote: I'm a research assistant at my university in the psych department, and my boss had me do this very mundane but also annoying task of looking at two lists of data, and seeing how much time each of the lists had for a certain variable in common. "a" 05 05 "a" 03 03 "b" 05 10 "b" 02 05
and so on. So she expected me to calculate it by hand, over and over again. And there were about 300 files I had to compare. So, thinking like a true programmer (being lazy) I wrote up a program that did exactly that, and I could simply input the filename and I'd have my values instantly. To my knowledge there wasn't any program that could do this, or that could do this as precisely and specifically as I needed, so I luckily could write one myself. STATA, SAS, R, JMP - any statistics program really - can do that for you. Or perhaps I am not understanding the task you were given. And no, writing commands in any of the abovementioned programs is imo not coding. I am able to do it without any formalized training, nor have I had any IT-courses. I am your run off the mill M.D. who admittedly grew up with a computer from age 5. EDIT: To briefly comment on the OP. It would be a waste of time for someone like me to learn actual coding. I treat humans, not machines. What good would it do me to be able to write C? Coding seems to be the new buzz-education and whilst I do believe it will be more widespread in the future I honestly doubt that we are going to see any coding language being taught in primary school any time soon. Why do you think Apple are so popular? It is because of the intuitive use - allowing any dimwit to pick up an iPhone and navigate it fairly successfully. And what format would those those programs need your data to be in? That's something that someone with little coding would likely forget to think about. In some cases even though you have plenty of programs that do the same thing, you may need to completely reformat your data so that those programs could do their thing. For small things like that it's often easier to write your own program to do it than to figure out how to reformat your entire collection of files to a format that some other program can handle. Like many people have said, programming has benefits for various different domains. On one hand, programming will teach you more about the hardware you are working with, whether it's a phone, a laptop, or a specialized piece of equipment. Beyond that though, programming has significantly improved my problem solving skills. The real core of what programming actually teaches you is not how to get from point A to point B in some arcane language but instead, how to break a problem down into manageable pieces, and how to approach a problem that at first glance seems far too complex or difficult to solve. It's critical thinking in it's most distilled form. Programming's problem solving is very useful with computers in general. Once you've learned a bit, all the mysterious errors, or confusing instructions for that new program you just bought suddenly make sense. And if they don't, you have a framework of knowledge you can rely on to try to figure them out.
What are you trying to argue? The guy stated that no program could compare 2 lists of data which is quite obviously not correct. Yes of course you should think about compatibility when creating a database, but I surely do not expect that to be necessary to a discussion pertaining to a research institute.
Whilst programming is a nice tool set you are hyping it up to be way more useful than it actually is - which is a classic fault when having specialized (or huge interest) in a field. Are you for instance going to study cellular chemistry because it will teach you more about how your body works? Let me answer that for you: The vast majority of the population does not - same as with programming.
Critical thinking is present in every single logically rooted subject out there and is by no means limited to programming, nor is programming an example of a higher level of critical thinking than for instance math. If you want to use improved critical thinking as an argument you are going to have to argue that one should study EVERYTHING - which is a notion I as an academic person do not disagree with, but on a practical level I realize that is impossible. The reality of the modern world is that every field is getting so specialized that you have to put in a disproportionate amount of time for what is very often marginal gains. There is a reason why we no longer see multischolars like Aristotle.
Please note that I am not denying the existence of the merits of programming. I am simply arguing that it is not worth it for everyone to spend the time and that the gains can be very marginal to non-existing in a lot of cases.
EDIT: For clarification: I am essentially reiterating the point made by thedeadhadji - the diminishing returns exist. And furthermore, seeing how hard a time we have teaching the kids of today reading and writing I think teaching them coding is of lesser concern.
|
On March 06 2013 16:21 azndsh wrote: damn i picked such a hip thing to do
Me too, I decided to make a career out of programming a few weeks before that coding.org video came out, I'm such a hipster.
|
On March 06 2013 22:05 Rotodyne wrote:Me too, I decided to make a career out of programming a few weeks before that coding.org video came out, I'm such a hipster.
My friend declared himself a Wizard 4 months before Will.I.Am and that video called us Wizards. He's wearing the hipster badge like it's mainstream.
|
I code because I have no artistic talents, I can't draw/paint/model worth shit.
Writing code is easy, deciding how to architect the software is the hard part. Working in teams and dealing with others can be tricky too. Many programmers/coworkers have inflated egos, there are just too many badasses in this world...
|
On March 06 2013 12:09 TheSwedishFan wrote: I think we should learn how to cook instead. A more valueable skill to have.
I kind of agree. Sure, coding can be fun and a good hobby for you with great gains and benefits especially if it sparks an interest to aim for a profession, but often it's not magically a better skill to learn than many others. I don't think that understanding how computers work or how to program makes you a lot better at using them or using some programs. On average learning it to a decent level consumes a lot of time as well, especially if you're at a stage where you don't use computers proficiently in advance(I would think, just some personal opinion). If you're studying economics and are considering between basics of programming and a good course on oral communication skills, I would recommend taking the latter (though both are good if you got enough time ).
|
Coding isn't for everyone. But I think you guys are reading too much into the youtube video. I see it as an attempt to try to fight some of the social stigmatization (at least here in the states) of showing interest in computing at a young age.
|
On March 05 2013 04:32 Shady Sands wrote: That video just sounds like a whole bunch of tech guys saying: "please we need a greater supply people who code out of love so we can work them harder and pay them less"
I agree in that I don't think Bill Gates really hides his motives in public anyway. He's spoken about the labor dynamics several times in the past. That being said, I think this is innocent enough a video to encourage kids to become more interested in programming.
Propaganda like this (ultimately similarly motivated) pop up all the time on TV for other fields like math and hard science.
The profit motives are "offset" by the social "good" of these types of videos. God knows we need more engineer - software or otherwise. There are enough lawyers, bankers, economists and consultants in this country.
|
On March 06 2013 07:40 haduken wrote:Show nested quote +On March 06 2013 03:07 tehemperorer wrote:On March 06 2013 02:08 SupplyBlockedTV wrote:On March 06 2013 01:58 HardlyNever wrote: Sorry if this is a bit off-topic but I was wondering what the general thought on what web-development falls under. I know some programmers that don't consider anything web-based as programming or coding, while others have a more mixed approach. In the broadest sense, it is programming in that you are telling a machine (a web browser) what to do, but it doesn't really do any heavy lifting like real programming does. To further muddy the waters there are things like php that are entirely web-based, but can be used to do "real" programming if needed.
I was wondering what everyone else's take on it was. As a web developer/designer I don't consider myself a "programmer" (even though I have taken programming courses), as that title can get pretty elitist, but I'm not sure what else it is besides "web developer," if anything. Bullshit. Following that logic only people that write machine code are real programmers.. because all other languages are just simplified versions of it... or maybe i should say that when you write c++ you are scripting, because it is all just simplified machine code :D.... ah well, im not a programmer so i might be wrong. He's right when he says as a web developer he doesn't consider himself to be a "programmer." There are a few reasons why: 1. Basic reason: look at how much a Java programmer makes compared to a front-end developer... I know I make at least 30,000 (no joke) more than the web devs at my work 2. Web languages aren't compiled languages, meaning there is a limit on how much of an individual machine those languages have control over 3. You don't need to know hardcore algorithms to solve problems as a webdev, and you aren't concerned with machine performance since the big company web-browsers are your platforms 4. Similarly, you don't need to know design philosophy, any design patterns, how to unit test, application deployment, database structure (normalization, etc.), application integration, etc., since all of that is pre-defined as a robust back-end application+database (on most big-time front-end applications) Your reasons make no sense... 1) Your pay doesn't certify your capability. I'm sure there are web developers in the world that would earn 30K more than you. 2) Since when does your tools define your roles? Especially in modern age where 99% of programming is done within application frameworks (either in house or standards) and memory management. 3) Agreeable to a point but I think if you disqualify people based on complexity then you would need to disqualify just about everyone in the programming scene except for maybe the top 10%. Especially with web technologies being essential and prevalent in today's IT landscape. 4) What? No design pattern/unit test/data structure? what the? I'm not even a web dev but I know this is not true, the quality of web people you come across must be very low indeed... Sure they do 1) Across the board back-end devs make more than front-end... if there is a web dev that makes more than me, there is a back-end dev at his work that makes more than him, that's the comparison to be made 2) Analogy: The training/education that goes into designing cars is more advanced than the training/education that goes into constructing them. Furthermore, the training/education that goes into constructing them is more advanced than the training/education that goes into driving them. It is very much the same with programming. The knowledge requirement for Web development is somewhere between the construction and driving section of the car analogy. 3) You agreed for the most part, but to what you stated let me say this: Poorly designed web applications still work. It's because the basic structure has already been set up (i.e., the browser already knows how to draw frames, you just have to hook yours up to it). Most of the time the people designing these poor applications don't do it in a way that allow it to change or scale easily, and it's usually do to not knowing how to design the application (lack of design pattern understanding) 4) All devs I work with are very qualified and competent; in fact there are a few who are no longer with us because they couldn't cut it. I stand by my statement though, you don't need to know much of #4 to be a successful web developer. Knowing them makes you a good web developer, but it's just a natural fact that there are fewer UI Design patterns (stuff a webdev should know) compared to the vast array of Creational, Structural, Architectural, Behavioral, etc. design patterns (stuff a backend programmer should know). It's mostly because you can only do so much with scripts and parsers; Object Oriented Design, which is not even touched by webdevs, carries with it a bunch of design patterns that are simply not applicable in a scripting world. I am aware that in some web languages you can mock domain objects, but in truth you are basically told what the model is and therefore aren't applying any sort of design to it.
|
You will have to explain to me what type of web dev you are referring to, it looks like you are talking about the types that build static or basic dynamic eCommerce sites using drupal/php.
Web applications like stackoverflow / reddit / facebook / twitter are done by web developers as well, I have a hard time believing those mammoth applications can be done without the knowledge you listed.
http://en.wikipedia.org/wiki/Web_developer
|
|
|
|