Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 349671
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 12, 20262026-05-12T11:28:49+00:00 2026-05-12T11:28:49+00:00

The company I am doing my intership/appretinceship in, does mainly PLC programming with Siemens

  • 0

The company I am doing my intership/appretinceship in, does mainly PLC programming with Siemens modules.
Comes from the fact that most of the people were electric guys and switched over to engineering.

My problem as newbie there is, that I can’t be really efficient and fast when I code PLC software.

Even though I am very efficient when I am coding C# or Java in VS/Eclipse

It really bothers that I can’t be really productive with PLC as opposed to the “real” programming languages.

  • Is it the lack of code completion?
  • Is it the lack of overall knowledge on the automation side?
  • Is it the lack of innovation in PLC as opposed to VS (LINQ, Dynamics, Lambda)

Have you guys any good experience with PLC?
And how did you get productive with it?

Notice: It is my last year at the company, that’s also why I want to be very productive.

Looking forward to many great answers!

  • 1 1 Answer
  • 3 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-12T11:28:49+00:00Added an answer on May 12, 2026 at 11:28 am

    PLC programming is different than conventional procedural programming in several ways:

    1) Relay Ladder Logic is a fairly primitive langauge. Its hard to be as productive.
    Most PLC programmers don’t use subroutines; its almost as if the PLC world is
    one that time and software engineering forgot. You can do well by applying
    simple software engineering methods as a consequence, e.g., define interfaces
    between blocks of code, even if abstractly.

    2) Much of PLC programming has to do with boolean equations. If you want to be good
    at PLC programming, work hard at dealing with boolean logic: learn boolean algebra,
    especially things like De Morgans theorem for distributing NOT across AND and OR
    (since PLCs typically don’t offer NOT operators, you need this a lot more
    often then you’d expect)

    3) Understand that PLC programming is about control and feedback in realtime.
    Most standard programming langauges (e.g. Java) address this poorly if at all.
    Think carefully about the fact that the PLC code is logic that drives outputs,
    and that the mechanical systems being driven are effectively “logic” that
    drives PLC inputs
    . I’ve often modelled a mechanical system using another
    PLC, just to let me debug my PLC program without needing a real factory machine to
    control. This can also let you simulate failures; see point 6.

    4) Much of PLC programming is abstractly about transitioning from states to states,
    where a state represents what the PLC knows about external world, and transitions
    occur when the PLC reads an external input and discovers the world state has
    changed somewhat. Go learn as much as you can about finite state automata
    and supervisory control of discrete systems. It will pay you handsomely.

    5) PLCs often need to remember past events. Consequently much of PLC logic is
    concerned with setting/resetting/testing boolean/numeric state variables and or timers. So while the code of a PLC program often looks like pure logic, in fact it
    has lots of side effects, which makes reasoning about the program quite hard. Just as hard, in fact, as writing in a more modern language such as C or Java.

    6) Pay attention to handling mechanical failures. Most PLC programs assume
    the controlled system works as advertised; this is really poor practice. In the real world, the controlled
    system works as advertised only until it breaks, which it always does eventually.
    If you include diagnostic code to help determine what is mechanically broken in your PLC programs, it will take you longer
    to write them, but the users will love you, because there’s nothing worse than
    a factory machine which is broken but it won’t tell you how. A stopped factory
    is a stopped cash machine, and factory managers hate that.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm a student (studying in programming) doing an intership in a company, but was
I am doing short-term contract work for a company that is trying to implement
I am doing some work for a company that has SQL Server 2008. One
Doing some R&D for my company. We are trying to have a listView that
I noticed that when doing code view, people here in my company usually just
Hi what does this code do, I have a seo company doing some work
I am doing some work updating a data access library that our company uses
I'm doing a project for a company that's had software built by another firm
I am currently doing some work for a company that runs a legacy web
My company develops several types of applications. A lot of our business comes from

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.