Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Ask Slashdot: Best Approach To Reenergize an Old Programmer?

samzenpus posted about 2 years ago | from the get-back-in-the-game dept.

IOS 360

StonyCreekBare writes "I started out programming in Z80 assembler in the 1970s. Then I programmed in Pascal. Then x86 Assembler in the early '90s. Over time I did a smattering of C, Basic, Visual C++, Visual Basic, and even played at Smalltalk. Most recently I settled on Perl, and Perl/Tk as the favorite 'Swiss army Chainsaw' tool set, and modestly consider myself reasonably competent with that. But suddenly, in this tight financial environment I need to find a way to get paid for programming, and perl seems so 'yesterday.' The two hot areas I see are iOS programming and Python, perhaps to a lesser extent, Java. I need to modernize my skill-set and make myself attractive to employers. I recently started the CS193P Stanford course on iTunesU to learn iPad programming, but am finding it tough going. I think I can crack it, but it will take some time, and I need a paycheck sooner rather than later. What does the Slashdot crowd see as the best path to fame, wealth and full employment for gray-haired old coots who love to program?"

Sorry! There are no comments related to the filter you selected.

Coldfusion (5, Insightful)

Anonymous Coward | about 2 years ago | (#41627167)

Seriously, stop laughing. It's a niche language, but is used in a lot of places you wouldn't expect, and there aren't tons of developers. Bad for the language, but good for the developers. And the best part? It's easy to learn.

Truth. (-1)

Anonymous Coward | about 2 years ago | (#41627223)

Coldfusion sucks. He should learn LISP.

Re:Truth. (5, Funny)

Anonymous Coward | about 2 years ago | (#41627317)

Why, you lonely?

Re:Coldfusion (4, Interesting)

thejuggler (610249) | about 2 years ago | (#41627427)

I do very well ($$$) programming web based application with ColdFusion. Using other technologies like Javascript (JQuery) for the front end. With the launch of CF 10 this year the language is fully scriptable for those that like script and tags for that that feel better working with tags. While it does not force OO style of programming it does allow OO programming. Because the CF server is built on Java and runs in a JVM you have direct access to Java. CF is designed to be a very strong and robust RAD platform. And it is robust. ColdFusion server is free for developers but it is a commercial product and it has a price tag. Companies are willing to pay for a reliable server platform. They do it all the time. Additionally there are a couple open source ColdFusion engines that are free. Like the OP I too started out programming a long time ago. I started in the 80's and did many languages prior to ColdFusion including assembler, CNC, BASIC, FORTRAN, ASP, PHP, C/C++, SQL, Perl etc.

ColdFusion is a viable language and there is room for more developers.

Re:Coldfusion (0)

Anonymous Coward | about 2 years ago | (#41627477)

If only server-side CF licensing wasn't so expensive, it'd be more popular!

Re:Coldfusion (4, Informative)

lsllll (830002) | about 2 years ago | (#41627607)

If only server-side CF licensing wasn't so expensive, it'd be more popular!

Although many people who use CF pay for licensing to Adobe, Open Blue Dragon [] is an open-source implementation of the Coldfusion language and has evolved very nicely in the past few years. At a major site I write CF for, they have 11 production servers running CF (4 Enterprise). Besides those they have about 10-12 servers running OpenBD (all Linux), some outside facing, and some of those have been running for a few years without any hickups. So, licensing, IMO, is a moot point.

There are also a couple of other open-source or free implementations of the language (Railo, Smith, etc), but I've been extremely happy with OpenBD, specially some of the additional functionality it has that Adobe's version doesn't have, such as the Render() function.

Re:Coldfusion (1)

nschubach (922175) | about 2 years ago | (#41627481)

I don't do CF anymore, but Coldfusion has definitely taken strides to make life better. It's too bad they still charge for it when pretty much everything else is free.

I'm 30 and I already want out. (5, Insightful)

Anonymous Coward | about 2 years ago | (#41627201)

I wonder what it'll feel like when I'm 50, or 60.

Re:I'm 30 and I already want out. (5, Insightful)

Garridan (597129) | about 2 years ago | (#41627313)

Then get out. You're still young, you can learn an entirely new trade and expect to succeed. There'll be some pain and difficulty along the way... but it won't be as bad as hating your life for the next 40 years. (yes, 40 -- you don't think the retirement age is going to go down, do you?)

Re:I'm 30 and I already want out. (5, Insightful)

Anonymous Coward | about 2 years ago | (#41627421)

I think the expectation is that you'll transition to something up the ladder. What I actually see is people stuck in the same job forever while 25yo grads with mba's cycle in. They cut their teeth as project managers, move up, bring in a new grad. Programmers stay at the bottom, hoping that one day they'll make some awesome project that'll be their escape. Never happens.

Re:I'm 30 and I already want out. (-1)

Anonymous Coward | about 2 years ago | (#41627789)

I think the expectation is that you'll transition to something up the ladder. What I actually see is people stuck in the same job forever while 25yo Jews with mba's cycle in. They cut their teeth as project managers, move up, bring in a new grad. Programmers stay at the bottom, hoping that one day they'll make some awesome project that'll be their escape. Never happens.


Re:I'm 30 and I already want out. (5, Insightful)

Sussurros (2457406) | about 2 years ago | (#41627365)

By the time you get into your fifties you have more answers, less problems, some entrenched bad habits that are nearly impossible to break, a whole lot of dreams that you know you'll never achieve, someone who looks like your parent looking back at you in the mirror, and the search for sex is no longer an overarching need - but inside you'll still feel young.

At thirty you probably feel as old as you'll ever feel. You always feel young inside but at thirty the world stops looking new. That soon passes though once you realise that you haven't been paying close enough attention. The world will always be new and that you'll always feel young even if you live to be a hundred.

Re:I'm 30 and I already want out. (4, Insightful)

TechyImmigrant (175943) | about 2 years ago | (#41627697)

Switch to hardware. Do chip design. Then you can complete the process of turning your hair grey. But it pays better than software.

Re:I'm 30 and I already want out. (-1)

Anonymous Coward | about 2 years ago | (#41628175)

You got absolutely no idea at all what you're talking about.
"You always feel young inside but at thirty the world stops looking new. "

Re:I'm 30 and I already want out. (0)

Anonymous Coward | about 2 years ago | (#41627819)

I hear you. I look at other trades and think how nice it must be to know you won't have to retrain yourself every 12 months.

If you were comfortable with Smalltalk (5, Insightful)

stox (131684) | about 2 years ago | (#41627205)

I would take a strong look at Ruby. There are a lot of Ruby jobs available these days.

Re:If you were comfortable with Smalltalk (4, Informative)

Jane Q. Public (1010737) | about 2 years ago | (#41627685)

Second. The Ruby market is going strong. Yes, there are more jobs in Java and Python, but those are "established" code bases that need maintenance... there is less new stuff being done.

If you know Perl and some Smalltalk, you should have little difficulty with Ruby. Also, there is a bonus: check out Rhomobile. iOS and Android and Blackberry development... all in Ruby.

Re:If you were comfortable with Smalltalk (1)

Anonymous Coward | about 2 years ago | (#41627757)

Ruby could be an answer. It opens the way to the Web with Ruby on Rails and you may also use it to build native mobile apps with Rhodes:

I think you may have something here :)

Re:If you were comfortable with Smalltalk (0)

Anonymous Coward | about 2 years ago | (#41627855)

Is Ruby *actually* used for anything outside of math/academia?

Re:If you were comfortable with Smalltalk (3, Interesting)

lyuden (2009390) | about 2 years ago | (#41627937)

Is Ruby *actually* used for anything outside of math/academia?

Is there something on a scale of SciPy for Ruby ? I am not even begin talking about something like BLAS or LAPACK. I see some python jobs for academia, ruby jobs almost all belong to rails jobs in "new social media startup" space. Yes there is some mysterious oriental island in the Pacific where ruby may be used in academia. Somewhere else? I don't think so. But I would like to be proved wrong, however.

Pick something you personally find interesting (5, Insightful)

AuMatar (183847) | about 2 years ago | (#41627211)

You have tons of experience. If you're any good at all, you don't need a class, in fact a class will go far too slow. You need to get your hands dirty. Just pick something that you think would be fun, pick an existing app for it, and copy it. You learn more by doing than reading.

Flesh for Fantasy... (-1, Offtopic)

Frosty Piss (770223) | about 2 years ago | (#41627221)

Scantly clad females (or males depending on sexual orientation). Even in old age, many programmers (may have never actually seen a naked body "in the flesh".

Re:Flesh for Fantasy... (5, Funny)

ozmanjusri (601766) | about 2 years ago | (#41627849)



Energize (-1)

Anonymous Coward | about 2 years ago | (#41627225)

220v to the nipples might do it.

Scarface Medicine (-1)

Anonymous Coward | about 2 years ago | (#41627245)

Cocaine.... Will do...

You can try... (0)

Black Parrot (19622) | about 2 years ago | (#41627253)

...what they tried with the head in Prometheus.

I'd recommend putting on a raincoat first.

Old standbys (5, Insightful)

elysiuan (762931) | about 2 years ago | (#41627259)

If the primary motivation is getting a job I'd probably stick to Java and C#/.NET. Not the sexiest technologies but ubiquitous. Neither is going to be replaced anytime soon and even if they are they'll turn into what COBOL was with people working on legacy systems well past the host languages shelf-life. Given what you've said I'd probably focus on Java since you already have experience there. Another plus with Java is that you can still focus on mobile development with the Android platform if that's what's exciting you.

Or you can take the badass Paul Graham approach and create the next big thing in Common Lisp and ride that wave to YCombinator-esque superstardom! This is the more exciting/perilous route.

But those are rough to enter when new to language (3, Insightful)

SuperKendall (25149) | about 2 years ago | (#41627567)

If the primary motivation is getting a job I'd probably stick to Java and C#/.NET

I would agree with you, for someone looking to leave college in a year or two...

But for someone looking to make money sooner I'd say it would be difficult to land a Java/C# job without some practical on the job experience in those languages.

As unfair as that may be with his diverse background, it's simply the case that most companies are going to have a number of candidates to look at with a few years of Java or C# and it's going to be hard for him to get a job going that path. Longer term it may still be good to study though.

Re:But those are rough to enter when new to langua (0)

Anonymous Coward | about 2 years ago | (#41628077)

I'd say it would be difficult to land a Java/C# job without some practical on the job experience in those languages.

My current, well-paying job is my first Java job. I had had 20+ years with C++ and C. Java was no issue in the interview exam.

Hint: Google the "happens-before" relation. You need to understand it well before you can code anything in Java. Scary thing is, 99% of Java coders haven't heard about it.

Re:Old standbys (4, Insightful)

drolli (522659) | about 2 years ago | (#41627603)


The total environment (financially, technically) for mobile apps is not the most steady market. A little rule change on the side of Apple, and only big shops survive.

Phyton is nice and used sometimes.

But what will keep your bread buttered is Java/.NET+DB+"one application area of your choice" knowledge. Most big project are started in Java/.NET, most contain DBs.

And never focus on a language which can be only used for a single platform (Objective C - Apple), They may be the hype today. They may be the hype next year. The iphone now is 6 years old. That is significantly less than the time over whcih Siemens mobiles or Nokia mobile seemed invincible and ubiqueus in Europe. And significantly less than the first phase of success for Apple. in the 80s and 90s. (yes, also Apple can bring you products, which really suck).

meth (-1, Troll)

Anonymous Coward | about 2 years ago | (#41627261)


Java and Python (1)

Anonymous Coward | about 2 years ago | (#41627269)

Would go with Java and Python. Java will bring food to the table, JavaEE, Android and so on, and it's fun if you like Architecture, design patterns and stuff. Python just for fun:)

Re:Java and Python (1)

bhcompy (1877290) | about 2 years ago | (#41627357)

Yep, Java. Always java jobs around, and the years of experience with other languages will help since there are many seasoned programmers doing the same in the java world

Re:Java and Python (1)

SplashMyBandit (1543257) | about 2 years ago | (#41627359)

I was going to suggest Java as well. Java will let you cover the Web (Google Web Toolkit or Vaadin), Windows, Linux, Mac, Unix and, with a change of libraries, the fast approaching one billion Android devices too. You could extend your Visual C++ skills into cross-platform C++, but the constructs and standard libraries are not nearly as modern in design as Java.

Java is not the most exciting language out there for many, but it does allow you to get things done in relatively quick time - which suits businesses pretty well.

Depends on your skillset, but... (3, Insightful)

pieterh (196118) | about 2 years ago | (#41627275)

If you're better at smaller focused tasks, learn Android development, and team up with someone with good graphics skills.

If you're better at the big picture, learn 0MQ [] and sell yourself as an architect.

the sad truth. (4, Insightful)

rickb928 (945187) | about 2 years ago | (#41627297)

No one wants to tell you to take up JavaScript, or .NET, or drive through IOS, but the money is there.

SQL and VB will complement some of those skill sets.

the good news... (3, Interesting)

Anonymous Coward | about 2 years ago | (#41627495)

(bah, rick, you beat me to it. ; ) )
For mentioning TK, Visual C++ & Visual Basic, the basic assumption is that you look for something related to GUI applications.
In this case, IMHO:

  • Current hot topics: "Big Data", Map/Reduce, "Scalability", "Cloud", mobility, Web 2.0 (aka, the services-web [and to a lesser extent, "the internet of things"]) AmI, AOSE (agents, not aspects)... If you look at (least at the abstracts of) current research (e.g. through, you can get a better understanding of the technical meaning of those terms as opposed to the more marketing-departmental meaning, one can usually find on blogs.
  • Check out the "Gartner Hype Cycle for (emerging) IT" featuring a pretty thorough list of upcoming topics.
  • Current practical hot topics include: node.js & REST API development + Message Queue + I/O [DBs, file/service access, etc.].
  • Since, iOS/Android/tablets ~> apps with a HTML5 based view are (more than) enough for many cases.
  • node fits nicely for this, because of JavaScript's (almost complete) isomorphism and lack of (native) I/O calls. It looks like this stack is replacing RoR!

In any case, the (formerly future, now) present is still the web. Whereas the future is difficult to predict.

Good luck!

Are you looking for a job or learning new stuff? (1)

Anonymous Coward | about 2 years ago | (#41627303)

Are you really looking for a job or are you just imagining what employers want? Go out there and put yourself available. If you really know all these languages, learning another one will be piece of cake. Just tell the employer you can do the work they need. Learn whatever they need in your spare time if you need to. I'm sure you can get a job in programming if you look for it. It might not be the highest paying job, maybe not the best. But it will be a job. It sounds like that's what you need.

OTOH, if you just want to learn something new and you have time in your hands, just create something that you think has a shot at working. For instance, make an iOS app which you think might be succesful. Even if there are others doing the same, just do it. You'll learn the skill you need and you'll have a product. Who knows? You might actually pull it. But you need to invest some time in that sort of thing.

Modern Stack (5, Interesting)

watanabe (27967) | about 2 years ago | (#41627337)

I think you just need to add a modern stack to your resume and put out an example project on github, you'll be ready to find work. The stacks that people are hiring for right now:

  • Python -- tornado -- mysql / nosql (mongo or redis experience)
  • Ruby -- Rails -- mysql / nosql
  • Haskell/Erlang/Functional Insanity -- I have no idea how these people deal with data
  • Javascript/ Nodejs -- mongo probably
  • IOS Development

A solid web application based on bootstrap.js in any of the first four frameworks will get you an interview. A sample application for IOS should as well, at probably any one of your local agencies / design firms / app shops.

If I were in your shoes, I'd skip the big enterprise languages, like Java / C# -- if you like Perl, you're going to hate working in those languages, and much of the work in those languages sucks, to be honest.

My money-shot idea: learn kdb+ and q and go pull in $250k a year working for a hedge fund / investment bank. Also, it's fun and brain-bending.

Re:Modern Stack (1)

Vintermann (400722) | about 2 years ago | (#41628169)

Haskell/Erlang/Functional Insanity -- I have no idea how these people deal with data

Haskell has three big web frameworks: Happstack, Snap and Yesod. Happstack has a persistence layer called acid-state, Yesod's is called Persistent. I'm not sure what's Snap's default, but it's possible to mix and match from all three frameworks pretty much.

Listen up newbie... (5, Insightful)

fahrbot-bot (874524) | about 2 years ago | (#41627345)

...and perl seems so "yesterday".

Ya. It's not.

I'm a 49, with only a BS in CS, am fully-employed (though I often choose to work less than 40/week) and I use Perl every day for production projects. Yes, I also use about 9 other programming languages on both Unix/Linux and Windows (sigh), but when the shit is approaching the fan, Perl usually saves the day. Having a breadth of experience and knowledge is what makes one really useful. Knowing a little (sometimes more) about a lot of things, knowing what you don't know, and how to research what you don't know, is better than knowing a lot about a few things. It's also a damn-sight better than pretending to know thing you don't know.

I've been a systems programmer / administrator on just about every Unix platform there is and specialize in automating things. That experience also helps me on Windows (again, sigh). I'm the one that gets asked to do the "impossible" things because I figure out how to get them done.

As for fame and wealth... Be good and generous with people, especially the ones you love, pay off all your bills promptly and don't buy shit you don't really need. I'm debt-free and - actually - don't have to work ever again - though, I'd be bored (okay, more bored).

Oh, and don't be a dick, unless absolutely necessary. Then...

Re:Listen up newbie... (1) (102718) | about 2 years ago | (#41628101)

Only been at a few job interviews, directly or with recruitment companies.
The one killer skill is problem solving skills. There are so many out there working with IT that really sucks at problem solving (or don't have the experience to do it reasonable fast). Another of their problem is their narrow area of skills.

There are lots of programmers (and other IT ppl) out there, just writing boring code, and who tries not to get any interesting / challenging tasks.If you are looing for the interesting tasks, and can solve them, it elevates you to a level where you should always be able to get a job.

Learning a programming language is no big deal, I have programmed in a multiple of languages, and it does not take more than 2 days to be able to program and read sample code in a new language. Learning the API is the slow process. Getting used to the IDE takes some weeks. Takes years to master something like the iOS API. But you can get experienced in parts of it quickly.

If you are intelligent and have the problem solving skills, and human interaction skills, go to the recruitment companies, and they should be able to find a company that can't let a person like you pass.

Hookers! (0)

Anonymous Coward | about 2 years ago | (#41627373)

They'll help get the juices flowing.

To Re-energize an old programmer (5, Interesting)

Anonymous Coward | about 2 years ago | (#41627379)

I find myself in a somewhat similar situation, except that I started with IBM 650 machine language, then the SOAP assembler, back in the later fifties, then for a while was a wiz in FORTRAN, so have been programming for 54 years now. I found that same natural evolutionary path through Perl a pleasant adventure. Forget the money. Forget the fame. Take that early retirement at 60 to collect the government pension, minimize the lifestyle if you have to, and just enjoy programming as a recreation. Then help others.

Always wanted to learn Python, but never really had the compelling need for it. Now amusing myself taking the introductory course in Python. I'm at the stage of wondering if as a language, it starts out trying too hard to be easy, and ends up being just as complex and un-intuitive as brain teasers in C or Perl except a bit less possibility of really dense code. Even Cobol used to get that way. Anyway since the EDx course is graded, it gives one a nice challenge to test oneself against. 'Course it's easy for me to learn one more language, after the first 49, another one isn't hard. I feel for the kids trying it for their first introduction to programming. Some of them stumble so badly, and maybe forget that Google is their friend, so they find it even a bit scary. In the old days we never had Google. Ah for the days of McKracken, or Kernahan and Ritchie, when explanations were so crystal clear. Good luck!

C/C++ (4, Insightful)

VirexEye (572399) | about 2 years ago | (#41627389)

C/C++ is very relevant today, and will be just as relevant tomorrow.

Re:C/C++ (0)

Anonymous Coward | about 2 years ago | (#41627459)

There's no such thing as C/C++. Anyone who types "C/C++" is invariably a C++ programmer who has zero clue what modern C looks like.

Yes, C++ is a good language to learn. It's what they teach in college, and it's what Google and even Apple principally uses these days (OS X Mountain Lion has a crap more C++ in the basic run-time libraries--including the linker and loader--which suggests that all the old Unix hackers from yesteryear are being replaced by green college kids who use C++ as their default language.)

Re:C/C++ (1)

phantomfive (622387) | about 2 years ago | (#41627717)

Or they know both C and C++ well, and that each has its uses.

Re:C/C++ (-1)

Anonymous Coward | about 2 years ago | (#41627975)

I know highly seasoned C and C++ coders, including engineers who work at all the major companies and who work on the standard committees. "C/C++" is frowned upon. It's not just being pedantic. Would you type VB/PHP? Perl/Awk? C/C++ makes as much sense. And attempting to write in the common syntactical subset of C and C++ makes as much sense as doing it for C and Perl.

Many people who type "C/C++" still believe the myth that C is a subset of C++. Strictly speaking, it never was. But in any event modern C and C++ have diverged drastically. It would take me almost as long to port my C code to C++ as it did to write it in the first place. That's not an exaggeration.

When a resume crosses my desk with "C/C++" on it, I know exactly where to put it---in the dumpster.

Re:C/C++ (1)

Anonymous Coward | about 2 years ago | (#41628027)

If you've even done any systems programming where you hit OS API's directly you'll know that you have to mix both C and C++ constructs. 80% of the code I write at work would compile in a C compiler, the other 20% requires a C++ compiler, often the C code is mixed with C++ code in the same source file. They are not two different languages. It's entirely possible to import your C library source code into your C++ project. So obviously C is a subset of C++ when seen from a compiler standpoint.

When people write C/C++ they do it because they know how to write software entirely in C, entirely in C++ or more often, combine two in one single project.

You have mixed goals (4, Interesting)

Weaselmancer (533834) | about 2 years ago | (#41627399)

Not necessarily conflicting, but definitely mixed. I picture a 2 circle Venn diagram. One is "enjoy my job", and the other is "get paid". You'd like to be in the middle overlapping bit.

I have no idea how to tell you how to enjoy your job. Only you know what you like. As for the language? Completely irrelevant. Any decent coder can learn a new language. If you've gone from Z80 to Perl, then you already know this and you are most likely the right sort.

But only you can know what you would enjoy. What would energize you and make you happy. So here is a strategy for you to find jobs in that middle area.

Look at job postings like you are looking for a job. Check the job resources you like in the way that you normally would. Now print out and save the jobs you think you would enjoy. Look at their requirements. If you do this for a few months you'll see patterns emerging. I want to be a _____________, and every job posted for those kinds of positions has __________ as a requirement.

Keep notes. Eventually you'll see what you need to learn. Then go learn it.

Then if you can, hook up with a temp agency. Tell them you are looking for temporary work doing _________. Do that for a while and do it well. Be sure you impress at least one person at each assignment. Get their names and numbers. When you are done ask them if they would not mind being a reference for you.

Then when you are ready for your salaried position above, mark that time on your resume as consulting (because temp agencies on your resume aren't desirable). Then send out those resumes.

And from one greybeard to another, best of luck!

Re:You have mixed goals (5, Insightful)

Netdoctor (95217) | about 2 years ago | (#41627537)

I'd second that.

If you're hungry and worried about the rent, then make that your priority instead of worrying about being happy.

It's called Maslow's Hierarchy, and I've seen techie people make that same mistake time after time.

Take care of the tummy first. Don't lose your house. In your spare time, look for the happiness, either by training and/or job searching.

Rely more on your experience (0)

Anonymous Coward | about 2 years ago | (#41627401)

Why bother chasing the "new hotness"? You'll compete with a host of developers working in these "hot" tech areas, and while there may be a lot of work to be had there, what makes you stand out in that crowd? As a hiring manager myself, I give a lot of credit to experience. There may be fewer opportunities in the areas of your experience, but that can be a good thing, salary-wise. You should consider applying your experience to the exploding embedded systems space. If you're going to be learning something new, you might consider a system architecture, rather than a language. ;)

Re-energize and stimulate? It's easy! (0)

grumpyman (849537) | about 2 years ago | (#41627413)

Of course it's a good dose of PCP... I mean PHP.

Re:Re-energize and stimulate? It's easy! (5, Funny)

Jesus_666 (702802) | about 2 years ago | (#41628179)

Oh, come on. Comparing PHP to PCP is a bit harsh. I mean, one is dangerous and can lead to violent behavior and suicide and the other doesn't have a function called mysqli_real_escape_string().

High voltage (1)

dutchwhizzman (817898) | about 2 years ago | (#41627417)

High voltage to the chest, works best when used with conductive gel. They have apparatuses for that called a defibrillator.

ARM assembly (4, Interesting)

Miamicanes (730264) | about 2 years ago | (#41627431)

Seriously. Learn ARM assembly, practice hitting the bare metal in an Android phone, and get a job working for someone like Nvidia, Qualcomm, Broadcom, Samsung, HTC, or someone comparable. You have a skill almost nobody does anymore, and you know how much more fun assembly is. Screw Java and boring corporate productivity apps. You can have more fun with assembly writing drivers, and make more money while you're at it. :-)

Re:ARM assembly (0)

Anonymous Coward | about 2 years ago | (#41627589)

You can have more fun with assembly writing drivers, and make more money while you're at it. :-)

Sadly, I doubt this is true. Software is where the money is, even shitty software. Although as an embedded s/w guy, I completely agree. But, I haven't written assembly in a decade.

Re:ARM assembly (1)

grouchomarxist (127479) | about 2 years ago | (#41627997)

I think you're right that drivers aren't written in assembly, knowing assembly, esp. ARM assembly, probably helps with debugging.

Re:ARM assembly (1)

Anonymous Coward | about 2 years ago | (#41627593)

Drivers in assembly? Ouch. Really? I'd like to see that. The last time to took a look at a driver it was C/C++.

Why not use what you already know? (5, Insightful)

afgam28 (48611) | about 2 years ago | (#41627439)

C++ is still big, and the jobs that require it pay really well. C++ is an incredibly hard language to learn properly, and most of the Java/C# generation can't quite do it due to all the little gotchas of the language. If you've got the experience and skills then you should be able to earn big bucks doing C++. And if you decide you prefer Java, the step from C++ to Java is an easy one (much less so the other way around).

Also the embedded world still has strong demand for programmers, and pays well. It sounds like you've got experience with two different assembly languages and C, which is plenty.

iOS is cool and fun but IMO the market is saturated. If you get into it, not only will you have to start from scratch, but you'll be competing with low-paid graduate programmers. If you're finding it "tough going", then not only will you not be able to compete, but you'll be putting in a high amount of effort for relatively low pay.

He said smattering of C++ though... (1)

SuperKendall (25149) | about 2 years ago | (#41627761)

C++ is still big, and the jobs that require it pay really well. C++ is an incredibly hard language to learn properly

Not sure how far along he is in it, but he included C++ in "smattering"... I did C++ for a few years but it was long enough ago I'm dubious I could land a modern day C++ job based on what I knew and what I remember.

If he knew it well enough some refresher work may do it I suppose, but people looking for C++ work are probably looking for really solid C++ programmers.

Pff (2)

Greyfox (87712) | about 2 years ago | (#41627443)

Take a course on object oriented design and design patterns. If you have that much structural design, you can probably do structural design in your sleep. So bring it to the next level and get comfortable with OO design. This will make you a much more effective programmer with whatever OO language you decide to play with. There is still a lot of structural design and programming inside objects, so you'll still have a leg up on these young whippersnappers.

I find that OO design tends to be a lot more dynamic, so you may end up pushing your object interfaces around a bit before you figure out where everything wants to live. But knowing the things you'll need is more important than knowing where they'll live. If you put it somewhere and it doesn't fit, you can always move it around later on.

Stahp (0)

Anonymous Coward | about 2 years ago | (#41627451)

Old programmer this old programmer that omg

Book: 7 Languages in 7 Weeks (1)

thejuggler (610249) | about 2 years ago | (#41627457)

This is a good book to get you re-energized in programing and gets into introduced to 7 languages. They are: Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell

Enjoyable book, but... (0)

Anonymous Coward | about 2 years ago | (#41627595)

The book is fun to read and exposes the material quite well. I really recommend it for any programmer with a few years of experience.

It won't, however, teach you those languages beyond the basics. But it'll show you that not every language is procedural and some problems might be better solved with another paradigm. If you don't have formal CS training you might not know these, and then this book is a real eye-opener.

Really, read this book if you're interested in programming in general.

Simple answer (0)

Anonymous Coward | about 2 years ago | (#41627469)

PAY HIM FOR DOING A GOOD JOB and reward him/her for finishing things, on-time, meeting specs/requirements and for doing the job right from the beginning.

Do not reward people for being late all the time, then spending tons of OVERTIME to do the job they didn't do when they were supposed too.

I hate when management rewards people for fixing their own screw-up while ignoring the people who did the job right from the beginning.

Sounds Like You've Got the Tools (1)

tapspace (2368622) | about 2 years ago | (#41627475)

It sounds to me like you've already got the tools you need. You're telling me that you A) need work " sooner rather than later" and B) already have a good amount of experience and know modern marketable technologies. To quote a Kevin Smith movie, this is not the path of least resistance. On your resume, just downplay the "undesireables" like Basic and VB (arguably the ancient Z80 stuff, but more because it was so long ago more than it's not respectable). Ageism does exist, and you want to look fresh, especially on paper. The C and the C++ are very marketable skills if you actually can program in those languages (no offense; I don't know you, I'm just adding the disclaimer).

Finally, and I cannot stress this enough, there's no shortage of work for a good C programmer (probably not even for a suspect one). All the better if you can build things on your own. The same goes for C++.

eCommerce (1)

pspahn (1175617) | about 2 years ago | (#41627489)

Don't look at languages, look where jobs are in the eCommerce world. There's a ton of money exchanging hands and it's still fairly untapped. Find an eCommerce niche and develop your skills around that.

Are there really Python jobs? (2)

Animats (122034) | about 2 years ago | (#41627493)

Is anybody really hiring Python programmers? It's a fun language, and easy to use, but the library support is amateur hour. Google uses it, but they have an in-house support group.


Ranger (1783) | about 2 years ago | (#41627499)

is the future.

Believe (3, Insightful)

hcs_$reboot (1536101) | about 2 years ago | (#41627509)

You may wonder, and worry that you don't belong to the younger generation of programmers - usually preferred by employers. Don't. You belong to the pioneering team of programmers which knowledge didn't come from a school, it came from passion and challenge because, at the time, we had to learn by ourselves and to make efficient programs one had to master assembly - voluntarily (nowadays, assembly is a mandatory (and feared) subject taught in computer science schools to force students to get a clue about what usually does a cpu, and how a system works internally). This is an invaluable plus. So you may want to try web sites development - like 80% of programmers and "programmers" - in PHP or Java, or iOS for the fun, but you may also want to give another try to the C / robotics / devices programming etc... areas, where you could fit surprisingly well.

Python =~ Perl (2)

divec (48748) | about 2 years ago | (#41627521)

You'll find Python very easy to learn if you're already experienced in Perl. By experienced, I mean you understand the kind of Perlish programming patterns involving lists, hashes and complex data structures, and you understand object orientation in Perl, and you have a good feel about when to code something yourself versus when to start looking for a third-party module. All these things are very similar in the two languages, and different from other popular non-scripting languages such as Java. Indeed, if you understand that a Perl object is really just a hashref "bless"-ed with a class name, then you'll have a deeper understanding than most Python programmers of Python objects (which are essentially the same thing underneath, but with more "classy" syntax when you're defining them).

One major difference is reference types: Whereas Perl has both @a = (1, 2, 3) and $a = [1, 2, 3], Python effectively only has the latter. Similarly, Python does not have something like %a = (one => 'un', two => 'deux'), only $a = {one => 'un', two => 'deux'} . Also, strings and numbers don't magically behave like each other: you need to do str(123) or int("456") or float("7.89"). Since you appear to be in the USA, differences in Unicode handling probably won't matter too much.

Don't worry about the syntactical superficialities regarding semicolons, dollar sigils, whitespace etc; if you can already program productively in some language then it won't take you long to adjust. Get a good book on Python and spend a few days working through it solidly from cover to cover, or at least until you feel you don't need to continue. That way you'll crack all those minor surface-level differences in one maximally productive chunk of time.

Finally, don't waste time worrying about whether Python or Perl (or any other language) is "better" or "worse" overall -- too many lifetimes have been wasted that way :-)

Perl? (0)

Anonymous Coward | about 2 years ago | (#41627551)

Most recently I settled on Perl, and Perl/Tk as the favorite "Swiss army Chainsaw" tool set

Was this the late 90s? If so what did you do in the last 10+ years and if that was later I have to ask what were you thinking.

I have been programming for 10 years now(professionally for 4) and I'm well versed with C(++ and objective), Python, PHP, Lua, Assembly, Java, Prolog and I have a working knowledge of some more. I know this will get modded down as flamebait but programming languages are easy(heck I'm writing one atm while working full time). It took me 1 month to reverse engineer an application and code it using PyQt(which I had no experience with, or writing apps with a UI i.e. a non command line UI) google pyliveresponse for more info.

My point is stop wasting time thinking and just get into coding something new. If you can't then stick to what you know C/C++ is my bet.

Missing recent background... (1)

SuperKendall (25149) | about 2 years ago | (#41627591)

One thing I'm not quite sure of reading your question, is what you really have experience in recently. Is it server side stuff, is that where the Perl came into play?

It seems like the most immediate path to a job for you would be to play to that base of work, server or client side. So instead of focusing on iOS for the moment, it might be better to learn Ruby if you are more of a server side guy - because lots of iOS apps want server work done and for whatever reason it seems like a lot of the work is being done in Ruby.

Basically iOS is something that may be good to know long term but probably longer term than you are looking for at the moment.

You just need a good iPad book (2)

gig (78408) | about 2 years ago | (#41627615)

I tried quite a few approaches to go from Web skills to iOS skills, and this book really got me there, because it starts basically from scratch and focuses on iPad, and it uses newer Xcode features like StoryBoard that will save you a lot of time versus learning the older techniques.

Learning iPad Programming []

The book is available in iBookstore.

I don't really see why you would do anything other than iOS, because it is the only next-generation PC platform as yet, and it has the excitement of a young platform yet the maturity from Mac OS X that gives you all these frameworks to access to easily get a lot of functionality. So even though you are catching up, there are many iOS programmers who are also new to the platform, you can mix right in with them and share knowledge. And the platform is growing, so by the time you have caught up, there will still be work to be done.

Stack Overflow [] is also great when you get stuck on iOS programming. There were about 10 times I got stuck and the answer was on Stack Overflow, solved the problem right away.

Culture has changed (0)

Anonymous Coward | about 2 years ago | (#41627637)

I think there's a big difference between believing you have prepared yourself to do a type of job and convincing someone to give you a chance to prove it. People want demonstrated success in exactly the niche they are trying to fill, they're not interested in potential. So I suggest trying to enhance your appeal in some area you've already done, preferably recently, which overlaps with some direction you'd like to go. Otherwise its hard to even get an interview. Such has been my experience anyway.

Another option is adjunct teaching, if you have a BS degree. The pay is terrible, but its something.

get an idea together and just do it (1)

ThorGod (456163) | about 2 years ago | (#41627643)

If you come up with a good website idea, then it'll probably let you do backend (java/c/python/sql/etc) stuff as well as UI/website stuff (obj-c, etc).

As for quick money...well...come up with some dumb or simple $1 iphone app that everyone will love.

Short sighted (1)

teknosapien (1012209) | about 2 years ago | (#41627645)

I think your question is sort of short sighted. First of all what are you targeting for your "industry of choice"? Lots of industries still use what you are describing as outdated, non wage inducing technologies(social security administration and energy companies are still using VMS outdated, but many are also moving away for a better solution). The goal should be to get into a place that is still using what you are great with, that is moving to a newer technology/language,leverage what you know and get the practical experience you need to grow your skill set. settling on one language/skill is not always the way to move forward

It's not your ability to program. (5, Insightful)

TechyImmigrant (175943) | about 2 years ago | (#41627647)

It's not your ability to program. Lots of people can program and to a first approximation, most programmers are expected to be able to adapt to a new language or environment.

What makes you distinct is the contextual skills you bring. E.G. 802 or LTE protocols, HIPPA rules, industrial process control, DECT, pig farming automation, Point of Sale. There are thousands of different skill areas that a random programmer off the street won't know, but somebody needs.

Embedded programming or device drivers FTW (1)

Anonymous Coward | about 2 years ago | (#41627655)

Sounds like embedded systems would be a great fit for you. I would strongly recommend trying that path before something like iPad programming. Try checking out [] before making a final decision.

Contacts++ (0)

Anonymous Coward | about 2 years ago | (#41627695)

StonyCreekBare, you said you're local to the bay area, right? If so why not check out the hacker dojo in Mountain VIew, happy hour is every Friday @ 7p farther north in SF is noisebridge , still has some decent events.

All I'm seeing here is a laundry list of languages (3, Insightful)

Kaz Kylheku (1484) | about 2 years ago | (#41627703)

What have you actually made?

That is the question.

Software experience isn't a collection of language names matched with years.

JavaScript (0)

Anonymous Coward | about 2 years ago | (#41627707)

There is a huge demand for good JavaScript programmers. JavaScript is growing fast due to server side JavaScript using node.js. Also JavaScript is easy to learn. I suggest you download nodejs from
And here are some free books on JavaScript.

Settle for Python (1)

holle2 (85109) | about 2 years ago | (#41627715)

Since you wrote, you are used to Perl, the gap between Perl and Python is somewhat smaller than between Perl and Objective C.
And Python fun part is the indentation what makes your code automagically more readable and you have less curly braces.

I would even look for specific Python offerings related to the astonishing Plone ( which is based on Zope and that is based on Python. In the EU, for example, we are struggling to find Python/Plone developers.

The iOS stuff binds you to one Platform (i.e. Apple's) and makes you vulnerable if that goes down the drain.
If you stick to an open language and settle for an "ordinary" job, you can always find someone else to pay you.

Good luck,

Re:Settle for Python (1, Funny)

Anonymous Coward | about 2 years ago | (#41628079)

                  at all
                  i find it to be
                  terrible because:
                        the arrow pattern
                        is not a good code style

oops here's a new function, what a nice:
      unreadable gap:
            right above

No, seriously. Python is a terrible language. No language should encourage constructs like this (illustrated with curly braces):


The pythonic way is the wrong way.

Not iOS (1, Insightful)

ukpyr (53793) | about 2 years ago | (#41627721)

Not because it's uninteresting or unmarketable, but because it's got a language and a toolset that are fairly unique to it. Same with doing Android dev. On Android, Java is the easy part, learning the framework take a fair amount of time. This is from my experience, I don't like writing GUI's generally. Take with salt.

Java has a massive market. The Company I Work For, hires nearly anyone that claims java due to our size and semi-standardization on the language. For a quick $ fix, I suggest Java. You experience with older stuff can be used in porting older stuff to java. Fun for all!

Being who I am, I would also suggest you think about taking matters into your own hands long term. Find something that excites you, make it better or innovate something else off of it. Think tiny, supplemental income. Don't attempt to solve world hunger with your little dream thing. If it goes off well, think about how to expand it or do something else more risky. Of course, don't put all your eggs in that basket but hell, having a pipedream is fun if you keep grounded enough!

Just being pragmatic, I have nothing against making apps for iOS : )

Cheers and best wishes,

Two books matter (1)

chthon (580889) | about 2 years ago | (#41627745)

If you have used these, then you Perl background is enough to learn also Python or Ruby.

What I do not understand in your question is this. You have programmed for about 35 years, and yet your question seems to indicate that you have not found out yet that all programming languages are in essence the same. Someone experienced like you should have the basics of Perl and Ruby under the knee in less than a week, and then invest yet another week to know what the possibilities by working through the documentation to see what libraries are standard available.

Why would I hire you? (1)

Anonymous Coward | about 2 years ago | (#41627749)

My title is development manager. I am located in a different part of the world than you are, so there may be cultural differences.

I would prefer someone who knows my industry and the toolset we are using. Seems you are going for only the last bit of the equation.

If you can catch my interest at a user group meeting, a conference or some other place where I regularily build my candidate list, chances are that I will have a talk with you. If you know a bit about my company I will be very happy. If you are able to sit down, pair program (and yes, I know a number of languages, perl being one) and perhaps teach me something I didn't know, I will be ecstatic.

In greybeards (and yes, I have a 50+ team member) I look for someone who keeps himself updated - all the time - and who seems like an interesting person who won't go postal on me. Far too many old'uns have let go and are trying to coast until retirement. A lot of them come back into the market when their dreams of being a manager without delivery responsibilities didn't happen, and they are _angry_.

You have an upside compared with young developers. You are more likely to stick around for longer. That is valuable to me.

I won't use a recruiter, except when they call me with a potential candidate I can see is good right off the bat. They are incompetent when it comes to the most important bit - judging your potential to deliver quality code fast.

YMMV. This is what works for me.

Another Geezer for IOS & Android/Java mobile d (4, Insightful)

RemiT (182856) | about 2 years ago | (#41627783)

As a graying 60 plus who also started with Z80 assembler then progressed through Forth, Fortran, Lisp and 7 other languages, I have considerable feel for your situation. However, having endured lots of online discussion about today's 'real programming jobs' being for younger folk, I regret to suggest that full employment is an unlikely outcome (if a nice dream) in the tight financial environment we have all been living through. But I have found personal renewal and significant career and financial payoff in iOS app development for publication, then cross-development for Android, although the iOS payoff has been nearly 10x greater than for a similar Android product. And as one of my renowned neuroscience mentors taught, learning difficult new skills is the best way to keep an aging brain healthy... Fortunately, programming isn't my main career, but my downsized programmer brother (over 10 years my junior) has also had significant recent success learning to program mobile apps (Android) bringing in new income and job prospects. We both started out trying to tap the still hot market for mobile devices, and it would seem a shame to ignore higher-level independent mobile developer prospects if you couldn't land a rare ARM assembly coding job with a commercial firm. But with about 90% of the current coding on my day job being for multi-device web applications (in a world where 20- and 30- something web designers are 'a dime a dozen'), staying flexible and diversified, finding a niche and evolving new applications for new technology seem to have been the most important strategies for long term survival as a programmer.

All that shit is old hat. (0)

Anonymous Coward | about 2 years ago | (#41627837)

Everything you name is a bit yesterday.

Python was the amazing anti-Perl of 2002 that was going to make all programs beautiful and easy to maintain. It's really just another dynamic language with some really nice features and others that suck--just like Perl. Ruby is pretty much the same thing, except that it got hawt during the web 2.0 nonsense. Which of these languages you use should really depend on who's paying you or what you like more (depending on your project).

Java, oh, well that's the point and click language where the IDE writes all your code for you. It's a good bet if you are mediocre or want to be a big fish in a stagnant pond. The good news is that oracle is busy shitting where Java community eats. This state of affairs is a shame, because Java had some neat ideas and a lot of promise. The JVM started out as a terrible dog, but became a powerful platform with a lot capability. Question is, will One Rich Asshole Called Larry Ellison destroy it all? He's done a helluva job on MySQL.

iOS, is newish of the yesterday techs you mentioned. becoming a phone dev is maybe a good idea. However, Zynga and Big Fish and those Facebook-y free app game type folks seem to be struggling. Signs point to advertisers realizing that the ads they put in mobile apps are fucking worthless--nobody ever clicks through, except by accident. So, unless you have a compelling app that will pay you based on actual sales, good luck in the mid to long term.

The new HAWTNESS these days is Scala (eek a JVM) and NodeJS.

Can't say much about scala, because I haven't played yet. From what I see so far, it's a bunch of frustrated functional programming nerds hoping that the world will FINALLY UNDERSTAND why currying functions is cool.

NodeJS is an interesting, vibrant community full of young programmers who are exploring the capabilities of the most ubiquitous programming environment on two legs: Javascript. JS is a fuckwit language with all kinds of stupid built in. But it is also pretty neat. You can do cool shit, mostly because it has closures. If you jump on this bandwagon soon enough, nobody will notice that you don't know shit. If you learn to stop stubbing your dick on things quickly enough, you could become Node famous. Start with the tutorials, read Javascript the Good Parts and memorize which horrible features of JS to avoid.

If you take up JS or Ruby, remember - monkey patching global objects is a DUMB FUCKING IDEA, don't do that.

If your focus is purely mercenary, just count the adverts in your area. TIOBE-light.

If your focus is career satisfaction, learn some cool shit that sounds interesting. Get good at it and be thoughtful about what you learn.

Of course you are choking on a 100 level programming course...

Ever thought of working in sales?

Whatdoyamean? (1)

NewtonsLaw (409638) | about 2 years ago | (#41627853)

What do you mean nobody uses Cobol 60 any more?


I knew I shouldn't have taken a nap at the keyboard -- a quick zzz and you wake up with outdated skills!

Yeah, I'm a grey-beard too (started hand-coding 2650 assembler into hex-digits for keypad entry back in the 1970s) and was hardcore programming right up until about 1995 when I got into "content" creation for the WWW.

I still do some coding these days but it's mainly microcontroller stuff (because I also have a strong hardware background). I use C and some assembler for that. I like microcontroller programming -- usually there are fewer human inputs to stuff you up.

I wouldn't go back to coding as a job (I'm 58) because I find that my mind just isn't agile enough to work the way it did 30 years ago when I could keep so much contextual information in my memory at once that it was *easy*. These days, I live in a sea of paper and post-it notes.

No... find something more enjoyable than programming -- there are *lots* of alternatives.

CS193P (0)

Anonymous Coward | about 2 years ago | (#41627877)

CS193P is really just MVC programming with Objective-C messaging syntax (unusual as it is) thrown in. As Paul Hegarty says many times throughout the lectures, CS193P is only covering the basics and you'll need to dive into the SDKs and reference library to make any real progress, so if you're having trouble just following the basic course then iOS development possibly isn't for you.

If you're shit-hot at C++ perhaps you should consider Android? The basic application framework is Java-centric, but using the NDK you can write the bulk of your software in C++ and just have shims written in Java for Android.

golang (1)

jmcvetta (153563) | about 2 years ago | (#41627891)

Learn Go [] . It's clean, beautiful, and feels to me today like Python felt ten years ago. It's a very young language, and doesn't have the rich set of libraries you'll get with a more mature language. But community support is great, and more importantly, programming in Go is fun. If you're writing web stuff, host it on Heroku [] and stop worrying about system administration. Make your app 12-Factor [] compliant, and worry somewhat less about scaling. Play with Neo4j [] or other graph databases, and start to see the graphs all around you. (But note, there is no working, complete Go library for Neo4j - life can be rough at the edge.)

Most importantly, write what you find fun to write. :)

Really want an answer? (1)

kurt555gs (309278) | about 2 years ago | (#41627897)

The best way to reenergize and old programmer is a Korean massage with a "Happy Ending".

You asked.

COBOL mainframes at banks (1)

SciCom Luke (2739317) | about 2 years ago | (#41627905)

Python is hip, but there is still a lot of work in the (in my eyes more stable) languages of olden days. I have worked for the first half of 2012 year on a Fortran project, for example, that is still expanding. For job security, strangely enough, COBOL is the language of choice. If you do not mind all its quirks, you can work at a bank for the rest of your life. Banks have huge database mainframes that run on COBOL and for them it is cheaper to keep them up and running than to replace them by more contemporary server hardware, because they are smart enough to see that replacing such hardware has more consequences than just having the server room in a mess for two days. These COBOL mainframes are likely to stick around for several more decades. Moreover, because COBOL programmers are a rarity, the pay is not too bad either.

Re:COBOL mainframes at banks (0)

Anonymous Coward | about 2 years ago | (#41627971)

Banks have huge database mainframes that run on COBOL and for them it is cheaper to keep them up and running than to replace them by more contemporary server hardware, because they are smart enough to see that replacing such hardware has more consequences than just having the server room in a mess for two days.

Don't you believe it. A friend of mine was recently involved in a project to virtualize their mainframe because they couldn't be guaranteed spare parts in the future - now their system is running in Windows, in a sense, on commodity hardware.

Perk is not yesterday (1)

Alioth (221270) | about 2 years ago | (#41627957)

Perl is NOT yesterday. The CPAN is excellent, continues to grow and solves real problems fast.

You may think it's yesterday just because you don't see cgi-bin/ in URLs any more, but at the back end there's a lot of Perl glue doing important jobs.

La Plus Qui Change (1)

Ukab the Great (87152) | about 2 years ago | (#41627973)

The best motivation is creating your own solution to something you find a real PITA. Hasn't really changed from when you were a young programmer.

Modernize with Java?!? (0)

Anonymous Coward | about 2 years ago | (#41628105)

Try with Scala (or Clojure, or Groovy)!

Do a Django Project (0)

Anonymous Coward | about 2 years ago | (#41628117)

it will pull you through a set of more modern skills and get you as someone who knows what he is doing settled with python in 2 to 3 Weeks.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?