Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Education GUI Java Perl Programming

How Can an Old-School Coder Regain His Chops? 565

DonLab writes "I was a proficient software engineer in the 1980s, writing hundreds of thousands of lines of ALGOL, FORTRAN, COBOL, and Pascal programs, as well as working in 370 and 8080 assembly language & pre-relational DBMS systems. My hands-on programming career ended when I became a freelance analyst and designer, ultimately retiring young in the early '90s. Now I'd like to reenter the field, but I'm finding that I know nothing about today's post-C languages, programming tools, and computing environments. I wouldn't know where to start learning C++, PHP, Java, HTML5, or PERL, much less how to choose one over the other for a particular application. Can I be the only pre-GUI software designer or hobbyist searching for a way to update his skills for Windows, iOS, or Android?"
This discussion has been archived. No new comments can be posted.

How Can an Old-School Coder Regain His Chops?

Comments Filter:
  • C-sharp (Score:4, Informative)

    by Ethanol-fueled ( 1125189 ) * on Sunday August 01, 2010 @06:44PM (#33104574) Homepage Journal
    Submitter - not trolling, but you should include C# in your list if you want to be relevant today.

    Don't hate the players, hate the game.
  • F/OSS! (Score:5, Informative)

    by comrade k ( 787383 ) <comradek@@@gmail...com> on Sunday August 01, 2010 @06:52PM (#33104660)

    I wouldn't discount languages like C just yet. They're still hugely important in the kernel world, for example.

    As far as newer languages go, there are a lot of F/OSS projects that could use another hand. Have a look at the Bugzilla for various projects and grab the latest source from svn/git/mercurial/whatever. Your skills as a programmer should transfer over to a new language relatively easily, and you'll have done a good deed.

  • Re:stupid idea but.. (Score:2, Informative)

    by Ethanol-fueled ( 1125189 ) * on Sunday August 01, 2010 @06:58PM (#33104730) Homepage Journal
    I have never read an introductory O'Reilly or "...for Dummies" book that was better than the multitude of online tutorials out there. Introductory books are, in my opinion, wastes of money.

    No books necessary, just hit the net for more control over finding something that caters to your skill level. One dosen't have to go to Sourceforge to find snippets and application code.
  • Re:Don't (Score:5, Informative)

    by drolli ( 522659 ) on Sunday August 01, 2010 @07:15PM (#33104928) Journal

    Parent is definitively right.

    This guy knows *COBOL* and he thinks for career reasons about new languages? As fas as i understood that COBOL coders are right now (or in a few years) worth their weight in gold; I hold a phd in physics, programmed in nearly all "post-c" languages, (and some non post-c languages) and i was thinking about learning COBOL to earn money.

    I mean it could be that he got some offers by now.... (maybe posting to ./ was just a way of applying for a job?).

  • Re:Work backward (Score:5, Informative)

    by Netshroud ( 1856624 ) on Sunday August 01, 2010 @07:18PM (#33104946)
    If you want to learn Objective-C, the iPhone Application Development course (Stanford) on iTunes U [apple.com] is extremely useful.
  • by Anonymous Coward on Sunday August 01, 2010 @07:34PM (#33105108)

    Hey, I'm 54, so I'm an older programmer.

    One of the things that really started to happen in the 80's was the concept of event loops, and programming based on that. It's a big difference in how you do things, compared to what was done in the '70s and early '80s.

    So, in addition to all those new-fangled pinko languages like Java, C++, C#, Perl, and all that other stuff, you've got to think event loop as well.

    Personally, I'd find some simple projects to do that'll let you bit into both more modern styles, and languages. Get friendly with middle and high school math and science teachers, do some classroom demo programs for them. Lots of neat, small projects, a good way to warm up, and a chance to do something constructive at the same time.

    Now, you kids get off the lawn.

  • Re:C-sharp (Score:2, Informative)

    by Javagator ( 679604 ) on Sunday August 01, 2010 @07:38PM (#33105146)
    I would recommend starting with C#, also. One big advantage is the excellent and free IDE available from Microsoft (C# Express). There are also some excellent books available, such as Programming Microsoft Windows with C#, by Petzold. Also, C# is similar in syntax and structure to Java and C++, so you can more easily transition to these languages, if needed.
  • Re:C-sharp (Score:4, Informative)

    by alexmipego ( 903944 ) on Sunday August 01, 2010 @08:35PM (#33105588) Homepage

    Mono can run way more apps than Wine, specially if you include ASP.Net sites.

    Of course, most programmers do stupid mistakes that make it impossible to run in another environment than Windows. The most common one is handling paths like "C:\..." in which case there's nothing Mono can do.

    The sources for the main libraries are available from Microsoft and they even include installers so you can see them while debugging an application. I said kinda because the Microsoft license isn't exactly compatible with everything else out there and it isn't exactly built around a community you can simply commit a patch.

  • Switch to embedded (Score:2, Informative)

    by solid_liq ( 720160 ) on Sunday August 01, 2010 @09:19PM (#33105892) Journal
    You'll find getting back into the field, to program in high level languages with all of your previous experience outdated, to be very difficult. Companies will not want to pay you the salary your years of experience would warrant, and it would be like starting over.

    Instead, the method back in that I've found for those of us who started in the "old days" is to go for embedded systems development. The embedded world uses 10+ year old technologies, so your experience with assembly language programming and writing software for systems with limited amounts of RAM and storage space is a big plus for embedded systems development. There are plenty of companies still creating software for processors that run at between 4 and 20 MHz with anywhere from 256 bytes of RAM on up to a handful of kilobytes of RAM. I've found this sort of development work is much more interesting, anyway, and people with old school knowledge are considered more valuable, rather than a dinosaur, for such work.
  • by MAXOMENOS ( 9802 ) <mike&mikesmithfororegon,com> on Sunday August 01, 2010 @10:28PM (#33106306) Homepage

    That's the other thing you should learn: Oracle PL/SQL and Service Oriented Architecture (SOA). SOA these days means SOAP and message busses. At my place of work, we have a legacy COBOL application that needs to connect to the enterprise's Enterprise Service Bus (ESB). We are struggling to find anyone who can do it inside our company.

    Depending on what platform your COBOL runs on, you can almost certainly find some way to wrap it in a Java stateless session bean. Turning that into web services is pretty easy these days -- most free IDEs have wizards that will do this for you for the free containers. If you're using IBM stack then WebSphere and Rational are a must.

    Point being: Java and Java Enterprise Edition are also very useful here.

  • iTunes U (Score:3, Informative)

    by TRRosen ( 720617 ) on Monday August 02, 2010 @12:00AM (#33106784)

    As a child of the personal computer revolution I too grew up with procedural programing sinclar basic, apple integer basic, Pascal and Fortran. although I've worked with Java, C+, Obj C Visualbasic and real basic I've allways felt a little uncomfortable because I never had any formal training in any of them. The Stanford CS classes on iTunes U have really helped me fill in the missing pieces. 80% was review for me but the last 20% helped make the first 80% make more sense. Don't be afraid to start right back at the beginning it will really help.

  • Re:C-sharp (Score:3, Informative)

    by jozlod ( 1304051 ) on Monday August 02, 2010 @12:26AM (#33106904)
    if a scale has C# in it, but also has the note a semi-tone below C#, then you will use a B# In theory, you shouldn't have two forms of the same note in your modal scale, so that note, instead of being a C, becomes a B#
  • Re:C-sharp (Score:1, Informative)

    by Anonymous Coward on Monday August 02, 2010 @12:53AM (#33107054)

    On the typical chromatic scale most instruments use, no such thing as B#. B# only really exists in instruments where there are no fixed note intervals, like a trombone or fretless slide guitar.

    Hogwash. Even on the piano, C# major scale goes: C# D# E# F# G# A# B#

  • Re:C-sharp (Score:4, Informative)

    by shutdown -p now ( 807394 ) on Monday August 02, 2010 @03:08AM (#33107662) Journal

    As far as language features go, Mono fully supports C# 4, and that support was timely available (made to match public betas of .NET 4). It was the same for C# 3. There's no lag in that department.

  • Re:C-sharp (Score:3, Informative)

    by Canazza ( 1428553 ) on Monday August 02, 2010 @04:11AM (#33107900)

    I use C#.net at work, and with MS Visual Studio's code-completion it practically writes itself. Not only that but you can use the built in UI to build windows forms.

    Granted, you will be tied down to Windows platform, which for some is too great a problem to overcome. In that case, try out Python with the Pygame lib. Works rather well on all platforms (even some mobile ones)

  • Re:C-sharp (Score:3, Informative)

    by dave87656 ( 1179347 ) on Monday August 02, 2010 @05:08AM (#33108086)

    Agreed. We use Java for that reason. The fact still remains that, even with MS's monopoly power, Java is still the most used programming language. It's not perfect, but it is widely used and it isn't going away any time soon.

    Other than that, C and C++ are still in heavy use. And C will never die since all the new languages are written in it.

  • Re:C-sharp (Score:2, Informative)

    by Beat The Odds ( 1109173 ) on Monday August 02, 2010 @10:47AM (#33110236)

    With java you have independence. You're not tied to Windows or Linux.

    Or ruby, or python, or perl, or .....

  • Windows Message Loop (Score:3, Informative)

    by darkwing_bmf ( 178021 ) on Monday August 02, 2010 @12:44PM (#33111894)

    The first thing you should know about Windows programs (and most if not all GUI programming) is that the programs generally run in a loop (even if your programming language of choice hides this from you) and act upon receipt of "messages" from the OS. You have to program, among other things, what happens when you receive the message that says "the user pressed this button you've made" or "the timer you've set up has ticked" or "the user pressed the close window button", etc... Understanding this basic model will help you no matter which language you choose.

This file will self-destruct in five minutes.

Working...