PDA

View Full Version : careers: IT language suggestions for non-programmer?


bigred
10th February 2005, 03:22 PM
Thinking about padding the ol resume a little but not sure how to proceed......Java? ASP? .NET? VB/Javascript?

What would you suggest for someone who used to be a programmer a zillion years ago but also hasn't done any "real" programming in a long time and prefers to avoid the more "hard core" (ie harder) stuff and just get semi-intelligent on something that is in more demand today in an effect to get more hits on the online resume?

Iconoclast
10th February 2005, 05:52 PM
Originally posted by bigred
What would you suggest for someone who used to be a programmer a zillion years ago but also hasn't done any "real" programming in a long time and prefers to avoid the more "hard core" (ie harder) stuff and just get semi-intelligent on something that is in more demand today in an effect to get more hits on the online resume?
Really, J2EE and .NET are the technologies of choice for new applications, so I'd be learning one of those. In either case, you'll need to read up on the object oriented methodology, which some people have real problems switching to after a life of procedural programming.

Wudang
11th February 2005, 03:38 AM
Also depends on the kind of money you're looking for - a J2EE guy can earn a lot more than a VB guy in general. Though a pal contracts for trading floors writing VB code that he bangs out in a day or two and gets throw away in 3 months, high pressure work.
.NET is good. I bought my wife this .net book (http://www.pearsoned.co.uk/Bookshop/detail.asp?item=100000000041608) and it's very good.

a_unique_person
11th February 2005, 04:28 AM
Why slum it in programming? Project Managers who understand computing are always in short supply. Well, good ones are. There are more than enough idiots are out there, good ones are very rare.

bigred
11th February 2005, 07:19 AM
Originally posted by a_unique_person
Why slum it in programming? Project Managers who understand computing are always in short supply. Well, good ones are. There are more than enough idiots are out there, good ones are very rare. Preaching to the choir my friend. Sadly, very few people get this and the demand for them is very low....unless they already have a ton of programming experience. :rolleyes:

bigred
11th February 2005, 07:23 AM
Originally posted by Iconoclast
some people have real problems switching to after a life of procedural programming. That's been my impression. :(

:homer voice: stupid object oriented programming.....

FYI not looking to "become a programmer" though; just smart enough to be able to talk to them with at least reasonable intelligence as a business analyst kinda guy.

Wudang
11th February 2005, 07:30 AM
In that case I'd recommend
1 - data modelling
2 - familiarity with the technologies

The data, depending on the project, will require either or both knowledge of RDBMS table design and/or OOPS object descriptions. try one of Joe Celko's SQL books. Not sure about OOPS - I did a C++ course with QA that was good.

technologies - play on your own PC. Download an evaluation copy of Oracle, go to developerworks (http://www-130.ibm.com/developerworks/) and download WAS etc. Maybe look at UML? Never been sure about that though.

bigred
11th February 2005, 10:23 AM
I have done some data modelling in the past (ERWin). UML has very limited value IMO, but then again it's not about reality, it's about the perception....

I could stand to brush up on RDBMS. Not sure trying to just read up on OOP would help though; seems to me you'd need a course on that to get even semi-literate. The Oracle eval sounds very interesting, had no idea you could download eval copies (although they probably take up a zillion gigs-?).

Good ideas, thx all

hodgy
11th February 2005, 04:21 PM
OO is just a way of organising small procedural programs really. If you can understand Z80 machine code you can understand Java (given access to well written references).

Modern programming languages are not complicated in themselves - its the miriad of diverse uses that they are put to that is complicated.

Sorry - that doesn't help much does it. I'd go the J2EE route if I were you.

Peskanov
12th February 2005, 12:16 PM
I hate OO with passion. Especially inheritance. And I don't consider myself a bad programmer. ;)

Said that, I just want to add that there is a growing demand of programmers for Linux/BSD environments.
The usual request: Perl, Python, PHP (Jezuz, all begin with P), SQL.
Also growing: Ruby.

Python and Ruby are OO oriented.
Perl seems an extremely productive language.
SQL has no rival, despite all the hate it receives. :D

Wudang
12th February 2005, 12:31 PM
I beg to differ - OO is a way of approaching design and is a million miles away from stuff like say jackson structured programming. It has something in commmon with data-driven modeling systems yes.
I think what you're trying to say is that a method call is often a single subroutine?
I've met lots of people who think they know OO and don't. A pal worked for company that thought they were doing OO coding by compiling C code with a C++ Compiler.

TillEulenspiegel
12th February 2005, 03:33 PM
C++, SQL, JAVA and most importantly...... Mandarin.

69dodge
12th February 2005, 04:16 PM
Originally posted by Peskanov
I hate OO with passion. Especially inheritance.What's wrong with inheritance?

a_unique_person
12th February 2005, 05:12 PM
Originally posted by 69dodge
What's wrong with inheritance?

The problem that I have with inheritance is that it breaks all the progress that has been made in creating a mathematical model of programming. It is a good idea, but it uses that infernal creation of the devil, the hierarchical model, not the relational model.

The success of the Relational Database, to me, indicates that a relational model should be the underpinning of all modern programming. Smalltalk was just a bunch of guys modelling programming on a notion of what a language would be if it was based on the real world. Hence, OO just ends up getting bogged down in the end in the same dead ends the hierarchical db did.

The basic idea of OO is good, but the implementation is a disaster, hence the need for single inheritance, since multiple inheritance becomes unworkable, with 'interfaces' being a workaround hack.

The "Third Mainfesto", by Date et al, addresses the problem of mating a programming language to Relational design models, and addressing the issues of OO in a relational programming model.

They also address the inconsistencies that SQL suffers. Apparently, SQL was only a quick hack that was supposed to let them do further work on RDBMS development, while they came up with something better. However, it was rushed out to the real world before they were finished, and now we have to suffer with the many problems of SQL. They are well aware of the deficincies in SQL, and have a second generation language all ready to roll out.

third manifesto (http://c2.com/cgi/wiki?TheThirdManifesto)alphor dataphor (http://c2.com/cgi/wiki?AlphoraDataphor) , a free (for evaluation) product that implements the ideas of the "Third manifesto".

Peskanov
13th February 2005, 04:21 PM
What's wrong with inheritance?
I would rather ask "what's good in inheritance?". However, as I don't want to derail this thread I will just say that inheritance shares some atributtes with the dreadful COBOL:
- It's extremely buroucratic; dozens of files to express a really small set of functionality. Most of the code is redundant.
- It's unreadable. I am tired and bored of tracking a family tree of classes on paper to make sense of some API. Certainly, reading something like GUI.FLGWindowPP.GadgetSh2.IsPressed () is not my idea of readibility.
- It's hard to maintain. C++ and Java. All said.

Now you will say that I am blaming poor OO code or poor OO languages, then I will ask for a example of good OO code and you will decline. Am I right? :D

hodgy
14th February 2005, 02:04 AM
I beg to differ - OO is a way of approaching design and is a million miles away from stuff like say jackson structured programming. It has something in commmon with data-driven modeling systems yes.
I think what you're trying to say is that a method call is often a single subroutine?

Of course you are right - I was being a bit flippant but there is some basic truth in my original comment. My class contains some code that executes one line after the other in a procedural fashion. It may inherit some functionality but its not magic - the inherited functionality is also some lines of code that execute in sequence. The environment that contains and runs my class is likewise ultimately a load of code executing one line after the other.

My point is - if you understand general principles of writing code (loops, variables etc...) then you can pretty soon get to grips with a language like Java. OO principles are not too hard to understand either. The really hard bit (in my opinion) is mastering the real world applications. I could be a world authority on programming fast, efficent, compact Java programs designed to run on mobile devices but know absolutely nothing about integrating mission-critical corporate systems in a J2EE environment.

In summary - its not really the rareified OO bit that's hard, its the real-world / market / vertical (whatever you want to call it) experience that takes years to acquire.

bigred
14th February 2005, 01:38 PM
Originally posted by hodgy
OO is just a way of organising small procedural programs really. If you can understand Z80 machine code you can understand Java (given access to well written references).

Modern programming languages are not complicated in themselves - its the miriad of diverse uses that they are put to that is complicated.

Sorry - that doesn't help much does it. I'd go the J2EE route if I were you.

On the contrary, it makes a lot of sense; thanks.

I'm not thrilled at being reminded I'm old enough to remember Z80s though, assuming you mean what I think you mean (old Zeniths).

bigred
14th February 2005, 01:42 PM
Originally posted by TillEulenspiegel
C++, SQL, JAVA and most importantly...... Mandarin. Don't see much call for C++ -ers anymore, and that's hardly a non-programmer-friendly knowledge ;) From what I can tell Java and SQL are in huge demand, but no idea how "friendly" they are or not....

a_unique_person
14th February 2005, 04:13 PM
Originally posted by bigred
Don't see much call for C++ -ers anymore, and that's hardly a non-programmer-friendly knowledge ;) From what I can tell Java and SQL are in huge demand, but no idea how "friendly" they are or not....

As I noted earlier, SQL was only ever intended to be a quick hack till they got theal query language worked out, so it has a lot of inconcistencies. It is, however, excellent for programming even with it's flaws. Anyone can learn simple queries very easily. The more complex queries take a bit of learning, but the good thing about it is that it is a 'declarative' language. You just tell the computer what you want, it gets it for you.

iain
16th February 2005, 04:32 AM
As a non-programmer who dabbles, I found it hard to get my head round Perl (too inconsistent and confusing) and C (never got pointers) but finally found Python - a good language that makes sense and I could understand.

I learned python from this excellent book (http://www.ibiblio.org/obp/thinkCSpy/), then went back and found that Perl made a lot more sense too.

How commercially useful python is, I'm not sure though. Not very, I suspect. It is meant to be a very good rapid development language, allowing easy prototyping for C though (or so people who know about such things tell me).

Wudang
16th February 2005, 06:40 AM
Doesn't seem to be much demand for python on www.jobserve.com. I love rexx, so easy to use and I can pour out code endlessly but not much demand for it.
On the other hand, for a project manager maybe handy as it looks like it would make okay pseudo-code to draft out something that you want a programmer to code.

TillEulenspiegel
16th February 2005, 09:25 AM
Originally posted by bigred
Don't see much call for C++ -ers anymore, and that's hardly a non-programmer-friendly knowledge ;) From what I can tell Java and SQL are in huge demand, but no idea how "friendly" they are or not....

True on writing new proggies as far as c++ , but if your going to be in IT management, theres a hugh base of installed buisness apps out there. Somthing else noone mentioned , You should become fimiliar with novell networking.

hodgy
16th February 2005, 04:04 PM
I'm not thrilled at being reminded I'm old enough to remember Z80s though, assuming you mean what I think you mean (old Zeniths).

I was referring to the Z80 chip in the Sinclair Spectrum of my long departed youth - I guess its the same 8 bit chip.

On another note I was working in the HP performance center in Stuttgart before Christmas and they have a mini-museum of computer paraphernalia. One of the exhibits is an 8 bit memory 'chip' from 1965. Its about 10 inches long and 4 inches wide - you can see the wires and soldering!

Makes you realise just how exponentially things have advanced when you see it in juxtaposition to some of the worlds most powerful modern server environments.

bigred
17th February 2005, 03:23 PM
lol. I kinda wish now that I'd kept some of those old X86 machines for nostalgia, although I do have a few of the older games....

gnome
17th February 2005, 04:08 PM
Originally posted by TillEulenspiegel
True on writing new proggies as far as c++ , but if your going to be in IT management, theres a hugh base of installed buisness apps out there. Somthing else noone mentioned , You should become fimiliar with novell networking.

Still? Based on my meager experience (of two large audit companies) they are moving away from Novell and more to NT / Active Directory.

TillEulenspiegel
17th February 2005, 06:38 PM
Your probably correct Gnome .... guess I'm dating myself been a long time for me and corporate IT heck I remember when the IBM 370-ESA series was new! Hell VAX? Kevin Mitnick? Dumpster diving? Blue Boxes?...............sheesh I'm gonna go have a drink with jj.

a_unique_person
18th February 2005, 03:17 AM
Yes, and I did an upgrade from XA to ESA 4.2. Man, was that ever a waste of a year.

Wudang
18th February 2005, 03:50 AM
On my desk I have and still use a S/370 XA Reference Summary, aka green card, even though we're running z/OS.

a_unique_person
18th February 2005, 05:08 AM
Have they fixed that 4k addressing limit yet? The 360 was a work of genius, but the legacy contained a fair bit of clumsy baggage.

Wudang
18th February 2005, 05:14 AM
Pagesize is still 4K if that's what you mean? Or do you mean having to specify extra base registers for your assembler code as it increases?

a_unique_person
20th February 2005, 07:44 PM
Originally posted by Wudang
Pagesize is still 4K if that's what you mean? Or do you mean having to specify extra base registers for your assembler code as it increases?

The latter.

Nasarius
22nd February 2005, 09:38 PM
- It's unreadable. I am tired and bored of tracking a family tree of classes on paper to make sense of some API. Certainly, reading something like GUI.FLGWindowPP.GadgetSh2.IsPressed () is not my idea of readibility.
Yeah, that's Java for you.

Now you will say that I am blaming poor OO code

Well, you probably are...

- It's hard to maintain. C++ and Java. All said.

- It's extremely buroucratic; dozens of files to express a really small set of functionality. Most of the code is redundant.
Now I know you're looking at bad OO code. One of the core principles of good OO and inheritance is to reduce redundancy, and make your code reusable. If you're familiar with OO and design patterns, and the people who wrote the code are too, then it should be very maintainable.

The number one reason I love OO languages: unit testing. Yes, it's possible in other languages, but it's vastly easier to divide your program into discrete testable bits with OO. I've tried doing this in Tcl and Fortran (don't ask), and it's not pretty.

I've been working with VTK (http://www.vtk.org/) lately, and it's pretty good, though I wouldn't hold it up as an ideal example.

You could also take a look at Mozilla and KDE, both of which are written in C++.

Zep
22nd February 2005, 10:26 PM
Heh, I have a warehouse full of old computers that is in desperate need of a cull. By "old" I mean OLD! 1950's computers, and calculators back to the late 1800's!

As for an IT language? Be it ever so ancient, there's nothing like COBOL. Not because of any brilliant properties of its own, but because the number of programmers who speak COBOL are now few and far between, and maintenance and conversion of legacy COBOL applications is a current goldmine.

NB. For the unaware, COBOL was steered into existance by a woman - the great Admiral Grace Hopper.

http://www.cs.yale.edu/homes/tap/Files/hopper-story.html