This discussion is archived
11 Replies Latest reply: Jun 5, 2013 1:54 AM by Subramanian Meyyappan RSS

About Java Programing

Subramanian Meyyappan Expert
Currently Being Moderated
hi ,

I think over twice before asking question here. so anyhow time to ask

I here by , to grab the important points for the following question.

Now'days Most of the ide is enhanced/simplify the work for the java programmer.
say as eg: syntatic errors, casting works, Exception handling,grab the file from the path(importing) Most of the time, if any thing happens directly intimate to programmer.. except runtime exception.

ok. if a programmer doesnt had any ide means just notepad and with command prompt., means setuping ah path and complitation error : from syntax to run time exceptions most typical.. picking up lot of time

My bottom line of the question is pretty simple
A programmer using ide means pretty working good as well finish in time. but if he doesnt had ide means simple notepad struggling ah lot?

how does filter/iterate a good programmer? in other words how to certify a person as good programmer.
  • 1. Re: About Java Programing
    gimbal2 Guru
    Currently Being Moderated
    user707 wrote:

    A programmer using ide means pretty working good as well finish in time.
    Depends on how good you are. If you don't know anything an IDE is not going to save you.
    but if he doesnt had ide means simple notepad struggling ah lot?
    Anybody using notepad struggles with life itself. Use Notepad++ for a better experience. I still do that when I have to do little test things, works just fine.
    how does filter/iterate a good programmer? in other words how to certify a person as good programmer.
    Define "programmer". Because me personally I make a serious distinction between programmers and engineers. Programmers hammer out code, engineers design and build solutions.
  • 2. Re: About Java Programing
    939520 Explorer
    Currently Being Moderated
    I wouldn't say that an IDE allows you to finish a project on time. Projects just get ever larger and more complex to eat up the time available (must be an axiom there somewhere). However, I think it does make you a lot more productive compared to Notepad (or a stone tablet).

    How to identify a good programmer? I would like to look at a sample of his work to see if its well organized and not spaghetti code. I ran across many very intelligent programmers with years of experience that produce unsupportable spaghetti code (http://mindprod.com/jgloss/unmain.html). Of course, they may have brought a sample of someone else's work to the interview and claim it as their own, so that complicates things.

    Rather than overly quiz a candidate on low level java concepts, I would rather ask about higher level concepts such as the frameworks they used and how they would organize a project based on MVC principles. I would also try to determine if they can work well with others and are not a primadonna. I personally would completely ignore any certifications (I don't care if you are good at memorizing multiple choice questions. Although if you are just starting out I suppose it would help).

    I would also rather hire someone who has read many books and articles on programming on thier own (and continue to read to keep up) and not just the books they were required to read in college. Also, someone who is serious enough to have created projects at home on their own time 'just for fun'.
  • 3. Re: About Java Programing
    Subramanian Meyyappan Expert
    Currently Being Moderated
    thanks.
    before closing this thread any other inputs.
  • 4. Re: About Java Programing
    996933 Newbie
    Currently Being Moderated
    I agree with you, IDE's reduced the manual work, but doesn't mean it made things easy.
    Sometimes when we run huge applications, we get an error which may state that the error is in "a.java", but the error may be resulted due to some other java files that may be included in a.java.

    So the bottom line is :
    IDE's give some hints like what kind of exceptions, for instance: java.lang.IllegalStateException which may be helpful sometimes other times it may be vice-versa.
    And coming to your second question,
    I believe the way to filter a programmer is, check the efficiency and performance of the program he had written and how efficient he is in handling the given task. I also believe that if a person is good at one programming he should be a quick learner in other programming too, since the semantics behind any programming is same, all that changes is the syntax.

    Thanks,
    Niharika
  • 5. Re: About Java Programing
    gimbal2 Guru
    Currently Being Moderated
    I would more focus on the level of understanding of said programmer, but I'm silly like that. If you think code is all there is to it, plenty of posers out there know exactly how to wow you with epic code and technical know-how. But when you then ask them to translate business requirements to a maintainable technical solution they will still fall flat on their face.
  • 6. Re: About Java Programing
    morgalr Explorer
    Currently Being Moderated
    user707 wrote:
    in other words how to certify a person as good programmer.
    Please forgive me for weighing in on this a little late, but you have a question that is functionally unanswerable: "... how to certify a person as good programmer?"

    I've programmed in

    machine code,
    Assembler,
    C,
    C++,
    C#,
    Java,
    VB,
    LISP,
    PROLOG,
    SQL,
    and vaious other and diverse 4GL type of languages in my career. Each of those present an interesting yet different set of challenges to use, but using any or all of them do not make a programmer good or bad. A tool is just that, it is a tool. A language is used by a programmer in much the same way a mechanic uses a wrench. If you can pick up a wrench and take the head off of your car's motor, does that make you a mechanic. Obviously not. The same is true for using a language to make a program. A solution can be hacked to gether, but that does not make the author a programmer.

    So back to your question: "... how to certify a person as good programmer?" The answer there is: that depends. It depends on what you want to include as a requirement. These will change from company to company and even from school to school and quite often from teacher to teacher, but here is an attempt at giving you a heads up on what I look for in a candidate when they apply to be a programmer with my company or team:

    1 - personality: does the person's personality fit well to our team dynamic. Do they play well with others? You don't have to be gregarous, but you do have to be able to get along with all the existing players.

    2 - intelligence: does the candidate have the ability to wrap their head around complex problems and visualize what needs to be done. Can they follow basic and complex instructions. Do they know their own limitaions and know how to work within their abilities. Can they think their way out of a dead end?

    3 - drive: can we expect this person to work on their own, or do we need to babysit them--even spoon feed them all of the aspects of the project and their job or do they get up and get going on their own. Are you a self starter? Do you like to learn and do new things?

    4 - cowboy scale: on a scale of 1 to 10 how much of a cowboy are you when it comes to following corporate logic and rules. Do you now the differenc between working outside the box and anarchy? And if you are accused of the latter, can you substanciate your actions with a logical plan on why your approach was the best course of action.

    5 - technology: Where do you fall in the technology curve? What do you know about trends in the market today? Do you have your head burried in the sand or are you trying to stay abreast of developments in an ever changing industry.

    6 - problem solving ability: can you see the path to the solution? This is actually a combination of all of the above, but we further test this by asking you to solve some problems that do not have apparent or simplistic answers, but you can answer with simple reason and abstract thought.

    7 - programming knowlege: do you know the basic structures of programming? looping, conditional clauses, data structures, common methods and events... etc

    8 - programmig skills: what tools do you know how to use. Here is where we're dazzled by your ability to use Java... yes, that is right, down here at the end of the process; the final check box before you work for us. We're talking entry or near entry level positions here so basically you're skills using any language will be minimal compared to the other traits we look for in a programmer. It is also the easiest for us to change, should we decide to move in a different corporate direction.

    I hope this may help you figure out a little about what makes a good programmer and how an employer will probably view your skills. When I came out of college I was a "hot shot" C programmer--a real gun slinger as they used to say, but I soon found that top of the food chain in throwing code together meant very little in comparison to other factors of the programmer's make. Luckily for me, those other things were a natural result of my educaton and my desire to be a better coder than the next guy, but being a C smith out of college did little to help me along my career path in comparison to the other traits of my person and education.
  • 7. Re: About Java Programing
    gimbal2 Guru
    Currently Being Moderated
    First of all: nice post. Thank you for taking them time to write it.
    morgalr wrote:
    1 - personality: does the person's personality fit well to our team dynamic. Do they play well with others? You don't have to be gregarous, but you do have to be able to get along with all the existing players.
    I find this an interesting one, because it is very open to assumption. "Personality" is quite vague and people will likely want to replace that with "being nice". But that doesn't have to be the case, sometimes having a colder business attitude fits the team better. I've worked in business environments and I've worked in "family" environments where form is more important than result; me personally I can't do my job in such an environment because there is far less discipline when it comes to dealing with people that do not function properly; in stead of people going into the confrontation you get avoidance strategies and problems just fester until a breaking point. You need a well-oiled machine when doing development, being too chummy gets in the way of that.

    Of course it isn't black and white either.
  • 8. Re: About Java Programing
    abillconsl Explorer
    Currently Being Moderated
    gimbal2 wrote:
    First of all: nice post. Thank you for taking them time to write it.
    morgalr wrote:
    1 - personality: does the person's personality fit well to our team dynamic. Do they play well with others? You don't have to be gregarous, but you do have to be able to get along with all the existing players.
    I find this an interesting one, because it is very open to assumption. "Personality" is quite vague and people will likely want to replace that with "being nice". But that doesn't have to be the case, sometimes having a colder business attitude fits the team better. I've worked in business environments and I've worked in "family" environments where form is more important than result; me personally I can't do my job in such an environment because there is far less discipline when it comes to dealing with people that do not function properly; in stead of people going into the confrontation you get avoidance strategies and problems just fester until a breaking point. You need a well-oiled machine when doing development, being too chummy gets in the way of that.

    Of course it isn't black and white either.
    I think that you'll find about as many types of environments as there are (basic) personality types: cold, friendly, laid back, aggressive, structured, mean, forgiving, highly disiplioned, loosely diciplined, etc ... and often two or more of these mixed. I have not worked in all these types of environments, but I have worked in a number of them - indeed each company (and sometimes each division in the company if the company is large enough) is different. So I'd say each has to find his/her matchup and that should be the goal of both parties.

    But in the end I've noticed two things in particular matter most: competence and attitude.

    Edited by: abillconsl on May 15, 2013 2:40 PM
  • 9. Re: About Java Programing
    morgalr Explorer
    Currently Being Moderated
    gimbal2 wrote:
    First of all: nice post. Thank you for taking them time to write it.
    morgalr wrote:
    1 - personality: does the person's personality fit well to our team dynamic. Do they play well with others? You don't have to be gregarous, but you do have to be able to get along with all the existing players.
    I find this an interesting one, because it is very open to assumption. "Personality" is quite vague and people will likely want to replace that with "being nice". But that doesn't have to be the case, sometimes having a colder business attitude fits the team better. I've worked in business environments and I've worked in "family" environments where form is more important than result; me personally I can't do my job in such an environment because there is far less discipline when it comes to dealing with people that do not function properly; in stead of people going into the confrontation you get avoidance strategies and problems just fester until a breaking point. You need a well-oiled machine when doing development, being too chummy gets in the way of that.

    Of course it isn't black and white either.
    >
    First of all: nice post. Thank you for taking them time to write it.
    morgalr wrote:
    1 - personality: does the person's personality fit well to our team dynamic. Do they play well with others? You don't have to be gregarous, but you do have to be able to get along with all the existing players.
    I find this an interesting one, because it is very open to assumption. "Personality" is quite vague and people will likely want to replace that with "being nice". But that doesn't have to be the case, sometimes having a colder business attitude fits the team better. I've worked in business environments and I've worked in "family" environments where form is more important than result; me personally I can't do my job in such an environment because there is far less discipline when it comes to dealing with people that do not function properly; in stead of people going into the confrontation you get avoidance strategies and problems just fester until a breaking point. You need a well-oiled machine when doing development, being too chummy gets in the way of that.

    Of course it isn't black and white either.
    Team dynamics is one of the most difficult thing to fit an interview for, and it's correct, you don't have to be Mr Social to fit in. I'm fairly introverted, but play well with others. I work quietly and often do not even see the entire floor or department of the company I work for until years of working at that location, but I have learned to effectively network with the other developers in the company and the local area.

    At one time we convinced one of the middle managers we needed a 2 hour lunch on Friday for networking. We'd go down to a local restaurant, sit back and talk, and see each other in a more "natural setting". What the newbies didn't figure was all of those senior leads there were evaluating them for personality and if they thought they could work with them. We had a pool of about 60 people that would show up for our "no host luncheon" from various companies through the area. We had a great time--we blew off some steam, we networked with others to find solutions to what we were looking at, we even recruited a few people, but ultimately we found out what everyone was really like. Those sessions very much allowed the senior programming staff to evaluate who they wanted to work with and rate how dependable they thought each person was and who would mesh on what teams. I have to say during that era, I didn't care for my boss much, but when we suggested the networking luncheons, and they went along with them, I will admit my opinion of them went up significantly.

    On another instance I had a mainframe legacy programmer working for me that was, to put it mildly, kind of crotchety. Most fortuitous for me my wife took a workshop about that time I was able to read over her materials. They identified 5 basic personality types. This guy fit one of the descriptions perfectly. I decided to try working with him using the protocols described in the workshop: he turned out to be one of the best employees that I ever had. Great programmer too. The key there was: once you told him what needed to be done, he was going to complain, stomp his foot, and do the "humph!" type of purging sigh. If you knew that was just a basic mechanism he had to cope with new stuff and not to take any notice of it, then he worked out great. He ended up working for me on 3 major development systems, learned to write web based live reports, and basically retooled his toolset 3 times over the period he worked for me. This was all before Java, Web Devleopment, or laptops became popular. Basically back in the time of bear skins, stone knives, and sharp sticks.
  • 10. Re: About Java Programing
    HyperTension Newbie
    Currently Being Moderated
    Hey Subramniam some applications which make use of servlets and JSPs are needed to be deployed over web server. If anytime yoiu make any changes to your program then in web applications you not only need to recompile that program but also re deploy your web app which includes creating a WAR file of your application, which is obviously a tedious process if u have to do it frequently.
    The same can be achieved very easily i.e. by just saving your project in IDEs that we are having

    That is the reason why we use IDEs these days
    To identify a good programmer you can always check his/her OOPs concepts
  • 11. Re: About Java Programing
    Subramanian Meyyappan Expert
    Currently Being Moderated
    Hi folks,

    I get a Excellent Response for this topic, first-of fall i would like to say thanks to all. Here by sharing information. thanks ah lot :)

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points