PDA

View Full Version : is software development becoming common?



pbpersson
March 29th, 2009, 05:50 PM
My apologies if this has already been asked.....

I am wondering if in the 21st century, software development skills are commonplace?

Can any high school kid whip out an application in C++, Python, or Ruby?

There was a theory presented to me that as society progresses the skills required to develop software will become commonplace.

However, there is also a belief that software development will always require a very detail-oriented mind and a tenacity that few poeple possess and so for most software development is like climbing a mountain. Many can do it, but few would enjoy it.

What does everyone think?

TBOL3
March 29th, 2009, 06:01 PM
I sort of agree. I am really worried that if I do choose to go into EECS, than there won't be enough of a demand for me.

cardinals_fan
March 29th, 2009, 06:05 PM
Can any high school kid whip out an application in C++, Python, or Ruby?
I'm trying (but I use Perl) :)

I see web development, CGI scripting, and other online apps becoming the future for the software industry. I may not like cloud computing, but I believe that it is the future.

Grant A.
March 29th, 2009, 06:07 PM
I'm the only person in any of my classes who knows what C, C++, Python, Fortan, COBOL, ALGOL, Java, BASIC, GAMBAS, LISP, Haskell, Scheme, PHP, Ruby, Perl, Brainfsck, LOLCODE, and C# are.

And I'm the only person in my school who can program in Python or C. Hell, no one in my school even knows what Linux is. My Web Design teacher cocks her head when I mention C, Python, or Linux.

I feel so alone. :(

Kareeser
March 29th, 2009, 06:09 PM
You mean sort of like how in Star Trek, 8 year-olds learn calculus?

I suppose it's possible, but it would take a lot of work and concentration that just isn't possible for someone of that age.

Imagine trying to "think in code" while you're concurrently thinking of which snak-pak you want after recess :)

johnb820
March 29th, 2009, 06:10 PM
I believe that every person with a high school education should be knowledgeable in operating system design, computing concepts, and at least one programming language. Computers are not appliances, they are tools, and like every tool out there, one must understand how the tool works in order to be able to use it.

Grant A.
March 29th, 2009, 06:14 PM
I believe that every person with a high school education should be knowledgeable in operating system design, computing concepts, and at least one programming language. Computers are not appliances, they are tools, and like every tool out there, one must understand how the tool works in order to be able to use it.

Ask the average High School student in the United States what an Operating System is, and you will get a ton of blank stares.

Delever
March 29th, 2009, 06:18 PM
Ask the average High School student in the United States what an Operating System is, and you will get a ton of blank stares.

Uh, thats easy, it is the system which does operating.

koenn
March 29th, 2009, 06:20 PM
I am wondering if in the 21st century, software development skills are commonplace?

Can any high school kid whip out an application in C++, Python, or Ruby?

Quite the opposite, I think.
computer usage becomes more and more commonplace. But at the same time, people tend to see computers as appliances.

There used to be a time when using a computer was equal to programming it to do what you needed done. Now, it's a matter of clicking the right button, which means someone else has done the programming for you, in advance.
At the same time, computing needs increase, and we expect more and more. So programs will continue to increase in size and complecity.

So there's always going to be a demand for programmers, but the definition of programming might change over time. It used to be that programming was done in machine language, today there are development tools that allow you to drag and click an application together. Or modeling tools that generate (at least skeleton) code on demand. Someone will still have to build the tools, though, and meybe review the code.

Oh, and no one just 'whips out' an application in C++ ...

Tomosaur
March 29th, 2009, 06:23 PM
I think high level languages and toolkits will become common-place, yes - but things like C, Java, even Python will remain fairly inaccessible to regular computer users. Programming should be taught from a young age imo - as computers are now so common place. We teach kids things like woodwork, how to re-wire plugs etc - why don't we teach them something they might actually use regularly?

shadylookin
March 29th, 2009, 06:26 PM
My apologies if this has already been asked.....

I am wondering if in the 21st century, software development skills are commonplace?

Can any high school kid whip out an application in C++, Python, or Ruby?

doubtful a significant portion of my high school couldn't pass basic algebra to save their lives and I doubt much has changed in 3 years. Plus the difference between hello world in python and developing software is huge.



There was a theory presented to me that as society progresses the skills required to develop software will become commonplace.


People will learn how to use the software they need, but they probably won't learn anything beyond that.

Sort of like how since the car was invented most of us have learned how to drive, but if something goes wrong we won't know the engine from a spark plug.



However, there is also a belief that software development will always require a very detail-oriented mind and a tenacity that few poeple possess and so for most software development is like climbing a mountain. Many can do it, but few would enjoy it.


I think that sounds more accurate I guess only time will tell though.

Synthros
March 29th, 2009, 06:32 PM
I don't think that software development skills are commonplace just yet, but I do believe we're getting there. When I was in grade school, we had a class where we sat in front of a computer and learned how to program simple tasks in BASIC. However, it we only did that for one year / grade level. After that, I never touched a computer in the classroom again until high school, and even then, it had nothing to do with software development.

When comparing my grade school days to the way things are now, though, I can definitely see the evolution. Kids have computer classes on a weekly (or bi-weekly) basis from kindergarten onward (at least where I live). They are taught basic day-day-operations, how to use a word processor, how to put together cool presentations in programs like PowerPoint, how to use paint, how to navigate their way around the Internet, and so on.

By the time these kids reach high school, they'll likely know more about computers than I did in my first 3 years working in IT.

Again, I don't think software development skills are commonplace at this time, but general computing skills are (which is completely different from when I was growing up). Once kids hit high school nowadays, they often have their choice of electives in basic languages like HTML. I think that, as time goes on, we'll begin to see the integration of programming languages with general studies -- perhaps students will be required to learn the basics of how operands work in XYZ programming language, and curriculum will be changed in math classes to accommodate these types of studies a couple weeks out of the year...

I don't think just any kid can pull a C++ (or other) application out of their hat, though I do see a LOT of younger people out there these days (some even 10, 11, 12) that are working on developing pretty sophisticated computer games, web pages, etc. It's like you mentioned, software development does take a detail-oriented mind. You have to be in to that kind of thing. If you're not, all the computer/programming classes in the world aren't going to do anything for you in the long run. It's kind of like automobiles -- they've been around for a long time, and I was even required to take an auto shop class in high school. What's under the hood doesn't interest me all that much, though, and I really don't remember anything from that class as a result. If my car broke down on the freeway, I'd be SOL ;)

jimi_hendrix
March 29th, 2009, 06:32 PM
I am wondering if in the 21st century, software development skills are commonplace?

Can any high school kid whip out an application in C++, Python, or Ruby?


no

sports still reign in high schools

cardinals_fan
March 29th, 2009, 06:38 PM
@Synthros: Trust me, high schools are not teaching programming, system administration, or anything more advanced than making graphs in Excel. Public school computing starts and ends with word processing. This is largely because finding competent teachers is hard - they can get better jobs elsewhere.

no

sports still reign in high schools
A little physical activity each day will keep you far healthier than sitting and staring at the screen.

MikeTheC
March 29th, 2009, 06:47 PM
While I doubt we'll see (for a long time, at least) every "Tom, **** and Harry" coming out of high school able to write software, I will tell you that, as kids become more tech savvy and as knowledgability in computers becomes trivially common place in society, the barriers to entry into any real tech job are going to increase considerably. This will probably have the spill-over effect into many -- most? -- other careers, where suddenly you either have to be a fairly advanced "specialist" in something, or you'll just be considered common. This will translate into making it harder and harder to get a job somewhere, since the minimum expectations will keep going up and up.

Of course, when it comes to the digital divide, this means that career-related success will also become further and further beyond the grasp of those who, for one reason or another, aren't raised or educated in a situation where they are tech savvy. Take, for instance, children of the homeless, or of migrant workers, and what-have-you. You can put them in schools, get them literate, get them educated in math, science, etc., but they may possibly never catch up with (or, more to the point, be on equal footing with) those students who were at this from "day 1" of their educational life.

haemulon
March 29th, 2009, 07:05 PM
doubtful.

I can play a few ditties on the piano, but can't join the orchestra.

I can paint watercolors for fun, and who cares?

I take lots of pictures with my digital camera, but that does not make a photographer.

What I'm trying to say is that lots of skills seem "commonplace" nowadays, but to really excel or do something useful, requires lots of time, patience, dedication, and there has to be some amount of innate talent.

Not only the technical part needs to be mastered but also to be able to create something that is imaginative and original.

pbpersson
March 29th, 2009, 08:12 PM
What I'm trying to say is that lots of skills seem "commonplace" nowadays, but to really excel or do something useful, requires lots of time, patience, dedication, and there has to be some amount of innate talent.

Not only the technical part needs to be mastered but also to be able to create something that is imaginative and original.

Yes, that is exactly what I am getting at. I had someone tell me that "Software development will become commonplace and in the future it will be a terrible field to be in"

However, here are some points:
1. As software is always expected to do more, writing applications is actually becoming more complicated. The Java applications I am writing now are light years ahead of the applications I wrote twenty years ago.
2. In order to excel in this field, a person needs a certain sort of mind, certain innate skills, and they need to ENJOY it because you need to devote countless hours to this in order to get good.
3. As people all over the world (including China) start expecting more from their computers and more imaginative software appears, there will ALWAYS be a shortage of developers. The number of things you can do with a computer are only limited by human imagination and the number of developers you can find to translate your ideas into reality.

Does that make sense?

....or do we already today at this moment have too many developers on the planet and not enough work to keep them busy?

cmay
March 29th, 2009, 08:49 PM
before i dropped out of school in 7 grade we did not even have a computer in the school i think. maybe the teachers had one somewhere but i never seen it. today i been told that we are thinking about including a short class on writing html in school and it sort of strikes me as a good/bad idea.

i would rather that our students got a small pascal, c ,c++ assembler what ever introduktion and a explanation on how operative systems works and how programs are written so they at least understand this much when they are forced to use a computer now to be able to follow school than i want them to learn write html. the thing is that if people knows how stuff works they are better judges of the products they end up choosing from and that goes for software as well i think.

its a bit funny to think about a few years ago there was a warning from schools in denmark that out kids can not spell proper anymore after computers are allowed for doing homework due to the spell checker functions in word programs and now years later we want the kids to learn not to spell proper when writing proper html tags.

Delever
March 29th, 2009, 09:23 PM
before i dropped out of school in 7 grade we did not even have a computer in the school i think. maybe the teachers had one somewhere but i never seen it. today i been told that we are thinking about including a short class on writing html in school and it sort of strikes me as a good/bad idea.

i would rather that our students got a small pascal, c ,c++ assembler what ever introduktion and a explanation on how operative systems works and how programs are written so they at least understand this much when they are forced to use a computer now to be able to follow school than i want them to learn write html. the thing is that if people knows how stuff works they are better judges of the products they end up choosing from and that goes for software as well i think.

its a bit funny to think about a few years ago there was a warning from schools in denmark that out kids can not spell proper anymore after computers are allowed for doing homework due to the spell checker functions in word programs and now years later we want the kids to learn not to spell proper when writing proper html tags.

Software development, as subject, is rapidly expanding, and nowadays you can't expect developer to know everything about developing.

Let's spin some names:

To make web pages: HTML, XHTML, CSS, Javascript << PHP, ASP.NET, JSP, PSP << IIS, Apache

It is mind boggling how much stuff there is, and how many areas to explore. Yeah, knowing html or css is no longer a question, it is common sense if you are in job interview. I could not complete above line, because every abbreviation I wrote there would make even more branches and subbranches, like Javascript: Javascript libraries, like JQuery, things like JSON, AJAX, DOM; PHP: templating engines, databases, frameworks, knowledge about popular existing CMS and other systems like Drupal; ASP.NET: again, things that exist in .net and new things MS keeps pumping out, like new language features C#3, WCF, LINQ, etc; JSP - I just know it exists, and has lots of things too; uh... And this is only about web...

Software development says less nowadays, because further clarification is needed: at least, development of what?

ugm6hr
March 29th, 2009, 09:33 PM
I think the comparison oh high school mathematics with programming is fair. Everyone learns enough algebra to solve a quadratic equation, but that will not put the future of the current academic world in jeopardy.

There may come a time when programming languages are part of the core curriculum, but that does not mean there will be an excess of developers.

MaxIBoy
March 29th, 2009, 10:16 PM
My apologies if this has already been asked.....

I am wondering if in the 21st century, software development skills are commonplace?

Can any high school kid whip out an application in C++, Python, or Ruby?I've done it before, if there was a math assignment where there were many repetitions of the same problem with the numbers changed. As long as I turned in the source code along with the assignment, my freshman math teacher used to give me extra credit for it.


here was a theory presented to me that as society progresses the skills required to develop software will become commonplace.I don't think so. The proportion of computer users divided by software developers has never been larger. We aren't a dieing breed, our numbers are still increasing, but I could easily see programmers becoming ever more of a minority.


However, there is also a belief that software development will always require a very detail-oriented mind and a tenacity that few poeple possess and so for most software development is like climbing a mountain. Many can do it, but few would enjoy it.I wince whenever someone says I'm "good at using computers." That's not how it works at all. It has to do with an unwillingness to be intimidated by interesting challenges. Basically, I agree.

pbpersson
March 29th, 2009, 11:38 PM
That's not how it works at all. It has to do with an unwillingness to be intimidated by interesting challenges. Basically, I agree.

Being a developer is like playing an adventure game where you are wandering through a huge castle with an infinite number of rooms on an infinite number of levels.

You explore the hallways and the rooms, gradually learning your way around the castle, knowing there are several ways to get to each room. Many doors are locked and some hallways are dead ends but you must always know there is a way to find your way through the maze.

Once you find your desired goal you must also find the shortest path to get there (optimizing your code).

However, many people don't like the feeling of being lost in an infinitely large castle with no map.....or worse yet, 200 maps that all contradict each other. ;)

kk0sse54
March 29th, 2009, 11:51 PM
Can any high school kid whip out an application in C++, Python, or Ruby?


God no, I'm in high school and while I might whip out a bash script every now and then I have better things to do than learn how to program.

samjh
March 30th, 2009, 01:54 PM
I am wondering if in the 21st century, software development skills are commonplace?

Can any high school kid whip out an application in C++, Python, or Ruby?

There was a theory presented to me that as society progresses the skills required to develop software will become commonplace.

However, there is also a belief that software development will always require a very detail-oriented mind and a tenacity that few poeple possess and so for most software development is like climbing a mountain. Many can do it, but few would enjoy it.
I don't agree with the notion that software development skills are or will be commonplace. The trend with any technology is that USAGE becomes easier, but DEVELOPMENT and MAINTENANCE become more difficult.

Computer software will become easier to use and more reliable. But the knowledge and skill required to develop software will become deeper and more specialised.

I think in the future, rudimentary theory of computer science will become more widely taught, but software engineering will become an even more difficult field. The trend is universal in any technological field: civil engineering (in the past, people built their own houses, these days it is a specialised skill), mechanical engineering (in the past, drivers were their own mechanics, these days mechanics with years of apprenticeship training do maintenance, and engineers with Masters degrees design them), and more. Rudimentary science becomes more accessible, but the science itself get deeper, and required expertise in the application of the science increase.