SitePoint Sponsor

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 25 of 36

Hybrid View

  1. #1
    SitePoint Enthusiast
    Join Date
    Oct 2004
    Location
    yeeeeeep
    Posts
    25
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    How do you rate yourself?

    Hi guys, just wanted to ask a question, how should we rate ourselves as php developers?

    There was a thread at sitepoint that talks about how good a programmer are.
    Most of the replies in that thread are about aptitude, for example, clean codes, comments, etc. But those can't be measured.
    And, I really do think everyone should at least strive for writing clean codes, well commented, good variable names, programs that others can pick up and modify.

    Besides these traits, I'm just curious how good of a developer I am, and what I should do to get to the next level.

    I've got most of the aptitudes required of being a good programmer, but when it comes down to how good of a php developer are, I can't say for sure.. I don't even know where to start rating myself. Besides the aptitudes mentioned above.

    Time? - Would this be a good indicator? Let's take friendster.com for example, how much time would a good developer need to create an exact duplicate from gounds up?

    Any other ways to measure how I size up on the chart of php developers?
    Last edited by chaosTheory; Dec 20, 2006 at 01:15.

  2. #2
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,290
    Mentioned
    198 Post(s)
    Tagged
    3 Thread(s)

    rating

    How do I rate myself? I'm self-taught and have been writing in PHP for a few years. I consider myself to be at an "intermediate" level. I know quite a bit, but I know enough to realize there's a lot more that I don't know. I'm not a "copy - paste", "test and forget" type. I take the time to understand the whys and hows. But my experience comes "as needed", so there are lots of things I haven't touched on yet. For example, when it comes to OOP, I'm still bit of a newbie. But I can analyze an app, like phpBB or WP, and write MODs and Plugins.
    So how would I do in a certification exam? I imagine it would depend on how the test is organised. I think I would do well in the "basics" and the areas I'm familiar with. Of course I'm only surmising, as I haven't taken an exam, so I don't know.

  3. #3
    Follow Me On Twitter: @djg gold trophysilver trophybronze trophy Dan Grossman's Avatar
    Join Date
    Aug 2000
    Location
    Philadephia, PA
    Posts
    20,578
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by chaosTheory View Post
    Hi guys, just wanted to ask a question, how do we rate ourselves?

    How to differentiate from the best, good, average, so so php developers?

    I've heard about Zend certification, but does it accurately reflect a developer's skills?

    Thanks
    You ask how we rate ourselves, but a certification is to help others rate you. Others rate you on experience. They get to see a resume with previous jobs and what projects you've worked on. They hear from you in an interview what you've created that's similar to the job you're applying to. They see your portfolio when you bid on a freelance site.

  4. #4
    SitePoint Enthusiast
    Join Date
    Oct 2004
    Location
    yeeeeeep
    Posts
    25
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I guess I should redefine my original post.

    I did read up on another thread at sitepoint that talks about how good a programmer are.
    Most of the replies in that thread are about aptitude, clean codes, comments, etc. But those can't be measured.
    And, I really do think everyone should at least strive for writing clean codes, well commented, good variable names, programs that others can pick up and modify.

    Besides these traits, I'm just curious how good of a developer I am, and what I need to do to get to the next level

    As Mittineague said, my experience comes as needed too, and that need depends on what I've worked on previously.. and unfortunately, for most part of my work, I've been doing rather the same thing over and over again.

    Do we need to do some ground breaking apps for us to be good php developers? And if yes, what would such ground breaking stuffs be?

    What about time? Would it be a good performance indicator, of how good a developer is? Let's take friendster.com for example, how long would you take to develop an exact replica?

    How about performance of our codes? Do good programmers meticulously tries out different ways to shave 0.03 seconds off processing time?

    Writing generators to churn out codes?
    Last edited by chaosTheory; Dec 20, 2006 at 01:40. Reason: Formatting

  5. #5
    SitePoint Guru
    Join Date
    Aug 2005
    Posts
    986
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    As Mittineague said, my experience comes as needed too, and that need depends on what I've worked on previously.. and unfortunately, for most part of my work, I've been doing rather the same thing over and over again.
    Then write a program that does the work for you! That seems to be what good programmers do. They identify what's the same thing every time and what's changing. Now you have to program what's the same and what's changing. You write reusable code (library, code generator, etc) that does the thing that doesn't change for you so you only have to worry about the changing requirements next time.

    Do we need to do some ground breaking apps for us to be good php developers? And if yes, what would such ground breaking stuffs be?
    Obviously you can be a good PHP programmer without having written ground breaking applications. I can't think of any groundbreaking things (or I'd have implemented them myself, and then they are not groundbreaking anymore if you recode them ;-))

    How about performance of our codes? Do good programmers meticulously tries out different ways to shave 0.03 seconds off processing time?
    Only optimize when necessary.

    Writing generators to churn out codes?
    Seems to be a good thing to do.

    Read "The Story of Mac: A Just-So Story" (second heading): http://www.gigamonkeys.com/book/macr...-your-own.html

    I'm trying to get to the next level by learning new programming languages. Not languages that are nearly identical (C# and Java) but languages where basic ideas like OOP were invented. Try learning Squeak [1] (a Smalltalk flavour). It's a full-OO system (not like Java) and the way you program is quite different. There are no files and you don't compile programs to run them. Instead you have live objects. This means that you manipulate the objects in the system (you add methods/procedures, classes, etc.) directly. This also means that you can run any code from your editor. For example if you type and select 1 + 4 and then either right click and select "print it" from the menu or press ctrl + p the editor inserts the result (5) in the editor right after "1 + 4". This also takes code generators to the next level because you can write a code generator and then you just run it in your editor. (though this is probably not necessary because Smalltalk is powerful enough to let you remove repetition without using code generators).

    I hope that a completely different environment like this can take you to the next level. You can apply ideas from these languages in PHP.

    [1]: http://www.squeak.org/ don't be fooled by the bad looking windows
    Last edited by Fenrir2; Dec 25, 2006 at 13:27.

  6. #6
    SitePoint Member
    Join Date
    Jul 2006
    Posts
    0
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I would rate primarily on how much money you have made.

  7. #7
    rajug.replace('Raju Gautam'); bronze trophy Raju Gautam's Avatar
    Join Date
    Oct 2006
    Location
    Kathmandu, Nepal
    Posts
    4,013
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Actually why this question has been raised over here? i dont know even.
    So,

    I also think that it is very difficult to rate one programmer himself. I think that anyone from any programing platform can say that i can that i can do this much but when a question/problem arises in the battle field (while working) he/she must rethink about his rating himself. So i dont want to rate myself.

    One can be considered as a perfect in one thing but another small think may affect to rate in his perfect area too.

    Finally i cant rate myself. Please give me a work to do with a particular specification and then decide me that how much i can do and rate me urself.

    Thanx
    Raju Gautam

  8. #8
    SitePoint Addict rvdavid's Avatar
    Join Date
    Nov 2006
    Location
    Australia
    Posts
    233
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Hi therre,

    Quote Originally Posted by chaosTheory View Post
    I did read up on another thread at sitepoint that talks about how good a programmer are.
    Most of the replies in that thread are about aptitude, clean codes, comments, etc. But those can't be measured.
    And, I really do think everyone should at least strive for writing clean codes, well commented, good variable names, programs that others can pick up and modify.
    These things are a given. If you are not following some sort of convention or are unable to write clean code, then you are still in the novice phase of your web development career.

    For most new developers (myself included for when I first started), formatting is not going to be one of the main concerns. Because at this stage, the new developer is still getting their head around syntax.

    New developers read line for line and pay more attention to columns whereas experienced developers read code blocks and look out for structures.

    So it is not really hard for a new developer to understand the code they are writing because they need to make the effort to read things line by line. Well such is true for me anyway.

    Quote Originally Posted by chaosTheory View Post
    Besides these traits, I'm just curious how good of a developer I am, and what I need to do to get to the next level
    I've often thought about this myself and a simple answer is to measure yourself up with other people's work. Source code that has been written like frameworks etc. In short measure yourself up with your peers.

    Download some source code that someone you regard to be better than you has written and if you can understand what they are doing and can rewrite what they are doing with ease, then you'd know that you are on par with the author.

    Also what you see as getting to "the next level", I see as "learning the next thing". To me, there really aren't levels of programming, but more things that one learns as they progress through their career.

    Quote Originally Posted by chaosTheory View Post
    As Mittineague said, my experience comes as needed too, and that need depends on what I've worked on previously.. and unfortunately, for most part of my work, I've been doing rather the same thing over and over again.
    Well, I can relate to this because I was in the same situation. What you can do to push yourself further along is to create your own research projects where you apply the things you've learnt and explore other methodologies to a problem domain that is familiar to you.

    Create a small, simple project where the aim is not to have a finished product, but to practice and apply development methods that are alien to you/you are interested in. Refactor the sh!t out of it and then reflect upon it when the smoke clears.

    Quote Originally Posted by chaosTheory View Post
    Do we need to do some ground breaking apps for us to be good php developers? And if yes, what would such ground breaking stuffs be?
    Not necessarily ground breaking stuff, but large scale stuff yes. For instance, part of my practicing my development skills is to keep tinkering with an application framework I've been playing around with since after my first OOPHP project.

    It now serves as my main research and development test subject.

    Quote Originally Posted by chaosTheory View Post
    What about time? Would it be a good performance indicator, of how good a developer is? Let's take friendster.com for example, how long would you take to develop an exact replica?
    In the sense of "whoever finishes first is the bestest in the world", no. Time is not a good indicator of how good a developer is. You can tell if a developer finishes too fast, that it means that they did not test your app properly or naively think that "this stuff is EAAASY!" or maybe they are just THAT good that they've managed to wrap their heads around the problem domain and finish the project with superhuman speed.

    On the flip side of the coin, someone taking too long on a project is an indicator that the developer does not have the necessary competence to complete the task or the client has nuked them with a zillion changes.

    With regards to the amount of time developing a friendster.com replica would take, it would be more of a project management thing and where specifications are important.

    In a nutshell, this is pretty much how I would do it. To get the time for this, I'd do the following:

    1. I'd get a feature list for friendster,
    2. perform analysis on the time it would take to implement each of the features,
    3. divide the features into small iterations.
    4. After you add those iterations up, you get your "perfect timeline"
    5. Get the value of what a third of the perfect timeline would be and add it to the original perfect timeline to get your total (you need to make adjustments for distractions unfortunately).


    Quote Originally Posted by chaosTheory View Post
    How about performance of our codes? Do good programmers meticulously tries out different ways to shave 0.03 seconds off processing time?
    An experienced developer will know what performance pitfalls to avoid and what performance hits to sacrifice in the name of necessity. Good programmers meticulously seek out optimisations when needed and are careful not to do it prematurely.

    Barring the obvious performance hits that come with using resources redundantly (such as opening a connection for each and every query), you'll find that application performance is tied to what your application needs to do.

    Beyond this, micro-optimisation is applied only when necessary or when a developer has spare time and is bored.

    Quote Originally Posted by chaosTheory View Post
    Writing generators to churn out codes?
    Writing generators is a moot indicator of skill level. To me, it means you know the syntax well enough to manipulate files, perhaps this is an indicator that you have a pretty good idea about what your language can do but it goes back to the whole idea of experience and wisdom.

    The skill indicator for me would be the logic what the generator spits out.

    Apologies if I've repeated anything anyone else has mentioned already.

    Regards,

  9. #9
    Follow Me On Twitter: @djg gold trophysilver trophybronze trophy Dan Grossman's Avatar
    Join Date
    Aug 2000
    Location
    Philadephia, PA
    Posts
    20,578
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    It's harder to answer from an introspective point of view since we don't always know what we don't know. That's why I chose Drexel University for my education over the alternatives even though they offered less in scholarship money. That was four years ago, just over a year to go, and I think I made the right decision.

    Drexel's computer science program requires 18 months of work experience to earn the degree, in three 6-month chunks over a five year enrollment. In other words, the 2nd, 3rd and 4th of the five years are spent half in class and half working. Students have to find the jobs themselves -- really go out and interview for full time paid work -- with some assistance from Drexel.

    That's allowed me to, before graduating, both validate that CS is what I want to be doing, and gain a ton of experience while doing it. I've purposely tried to find diverse jobs so I can gain new experiences and learn what I don't know so that I can eventually be the best developer (or researcher) possible.

    I have worked at a small company with 3 developers on new Java apps and legacy perl apps, and a large corporation's IT department writing C++ that interfaced with SAP software. For my final coop, I've applied to full time jobs at Google, Microsoft and SAP -- I want my third experience to be in a software company, not just developing software for a company. I want to see the difference and work with experienced developers so I can learn what I don't know.

    I just interviewed with SAP, I'll be doing phone interviews with Google next week, and a Microsoft recruiter is flying across the country to interview me in January. Hopefully one of those works out; if they don't, I have until April to find my next job.

    I know that was a bit much to read and a bit personal, but that's my approach to answering your question. That's how I am going about "rating myself" as a developer.

  10. #10
    SitePoint Enthusiast
    Join Date
    Oct 2004
    Location
    yeeeeeep
    Posts
    25
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    That's allowed me to, before graduating, both validate that CS is what I want to be doing, and gain a ton of experience while doing it. I've purposely tried to find diverse jobs so I can gain new experiences and learn what I don't know so that I can eventually be the best developer (or researcher) possible.

    I have worked at a small company with 3 developers on new Java apps and legacy perl apps, and a large corporation's IT department writing C++ that interfaced with SAP software. For my final coop, I've applied to full time jobs at Google, Microsoft and SAP -- I want my third experience to be in a software company, not just developing software for a company. I want to see the difference and work with experienced developers so I can learn what I don't know.
    I've went from jobs, doing flash, php, asp, vb, foxpro... but most of these experience is developing software for a company, that wants it yesterday, and their coding standards are even below what I set for myself.

    They don't care about specification, they don't care about maintainability, they just want it yesterday...

    So, yeah Dan, I'm hoping that some of the experienced developers who frequents the forum here can tell me what I don't know too.

    Dan you're in the US? Have you sent an application to Fog Creek? It seems to be a nice place for interns, I do read joel's blog every now and then, heck you might even be in their next video or something

    http://www.joelonsoftware.com/

  11. #11
    Follow Me On Twitter: @djg gold trophysilver trophybronze trophy Dan Grossman's Avatar
    Join Date
    Aug 2000
    Location
    Philadephia, PA
    Posts
    20,578
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by chaosTheory View Post
    but most of these experience is developing software for a company, that wants it yesterday, and their coding standards are even below what I set for myself.
    I've dealt with that. At TMF, my manager wasn't a programmer and, despite his best attempts, really wasn't able to predict how long a project or task would take. He'd estimate some things too high, others unreasonably low. When he did that I'd be clear, without being insulting, that the suggested task was either going to take much longer than the expected time frame, or suggest an alternative that would be simpler and quicker to implement. Depending on his mood I'd either talk to him in person about it or write up an e-mail detailing why the deadline couldn't be met or why an alternative would be a better solution -- and I'd do that before starting to work, not just before that deadline.

    When I worked at DuPont I ran into the same thing. I had a lot of work coming in from associates in Delaware and Germany that used the software I worked on and frequently requested new features. Towards the end of my time there I was given a request to implement a huge new set of features to support business in Canada. I told her that I wouldn't be able to implement those changes in the 2-3 weeks I had left as well as finish the other work in progress. I later found out she took that to my boss, who told her I was probably the first honest programmer she'd met. The rest of the developers had a habit of promising the impossible... I can't do that.

    I think there are a lot of things you can do to help make your own work environment as stress-free and rewarding as possible. Yes, if you're working above the standards of those around you, there's less to learn and less to compare to in an effort to better yourself. In that case you either have to motivate yourself to become better -- spend some time each day keeping up with development websites, learning new methods, reading about best (and worst) practices -- or find a better job

  12. #12
    SitePoint Wizard bronze trophy Kailash Badu's Avatar
    Join Date
    Nov 2005
    Posts
    2,560
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by flasherize
    I would rate primarily on how much money you have made.
    well. that would be a bad metric most of the times.

  13. #13
    Serial Site Creator ToddW's Avatar
    Join Date
    Feb 2004
    Posts
    791
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Talking

    Dan- After all your success (with websites) how come you are wanting to work for "the man"? I take it for corporate expierence and to better yourself in your own business? Or do you really want to work for someone else the rest of your life?

    Maybe this should be a new topic

    -Todd

  14. #14
    Follow Me On Twitter: @djg gold trophysilver trophybronze trophy Dan Grossman's Avatar
    Join Date
    Aug 2000
    Location
    Philadephia, PA
    Posts
    20,578
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by ToddW View Post
    Dan- After all your success (with websites) how come you are wanting to work for "the man"? I take it for corporate expierence and to better yourself in your own business? Or do you really want to work for someone else the rest of your life?

    Maybe this should be a new topic

    -Todd
    At the moment I have to. It's a requirement for my degree. After that, I probably will anyway. I could live off the income from my websites but I really only need half an hour a day to respond to e-mails and review orders to keep things going. I have no problem writing software for a company 8 hours, then coming home and writing software for myself for a few more.

    How my last 6-month coop works out will probably determine what I do after I graduate. If I manage to land a nice job at Google, Microsoft or SAP, maybe I'll want to stay and have references to get something longer term. If I don't, or if I find I don't like the work as much as I thought, I might end up finding a nice grad school to continue my education full-time while living off my websites.

    I also never take my business for granted. I've worked to diversify my sources of online income but realize that one or more could fail for some unforeseen reason at any time. I won't let that impact my quality of life -- if I have to get a normal job, it'll be a good one.

  15. #15
    SitePoint Enthusiast
    Join Date
    Oct 2006
    Posts
    70
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I rate myself really hard on my own work, which is why if I were to say how well I program, i'd say (scale 1-5) 2. However, at the same time everyone I see who I believe to be great programmers come to ask me questions which I can answer easily. Being self taught in PHP programming up and through VB and C++ I chose to try a intermediate class. The teacher recommended me to move up to advanced, which then I was asked to "help other students" with their questions. Although people ask me questions on certain algorithms which I can solve easily, I still learn a lot from others in return.

    Every programmer is better in certain aspects, just like your personality in real life. You may be very funny, but annoying, or very quiet yet, very wise.

  16. #16
    SitePoint Member
    Join Date
    Dec 2006
    Posts
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by chaosTheory View Post
    Hi guys, just wanted to ask a question, how should we rate ourselves as php developers?

    There was a thread at sitepoint that talks about how good a programmer are.
    Most of the replies in that thread are about aptitude, for example, clean codes, comments, etc. But those can't be measured.
    And, I really do think everyone should at least strive for writing clean codes, well commented, good variable names, programs that others can pick up and modify.

    Besides these traits, I'm just curious how good of a developer I am, and what I should do to get to the next level.

    I've got most of the aptitudes required of being a good programmer, but when it comes down to how good of a php developer are, I can't say for sure.. I don't even know where to start rating myself. Besides the aptitudes mentioned above.

    Time? - Would this be a good indicator? Let's take friendster.com for example, how much time would a good developer need to create an exact duplicate from gounds up?

    Any other ways to measure how I size up on the chart of php developers?
    Yep. I also like to know how long a good developer would take to develop a site like friendster.com from ground up.

    Budd

  17. #17
    Non-Member deathshadow's Avatar
    Join Date
    Jul 2006
    Location
    Dublin, NH
    Posts
    901
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Bud77 View Post
    Yep. I also like to know how long a good developer would take to develop a site like friendster.com from ground up.
    Budd
    If I was to ballpark that, I'd say two weeks tops - BUT, I would always Mr. Scott that estimate to four weeks. A good rule of thumb is to figure out how long any project would REALLY take, then double that figure when quoting it out - a good engineer is always a wee bit conservative, at least on paper.

    The most of that as a php backend wouldn't take me more than a couple days - and you can tell at a glance that the HTML side of things took maybe an hour... There's little or no images in the layout so that doesn't even add to the time. The big thing would be secure logins and testing, testing, testing before I'd write off on something like that. I always schedule at LEAST a week of testing cycle on any project.

    As to the original topic -

    I like to think I'm an advanced coder, but am willing to admit that my knowledge is a bit out of date. C, ASM, Modula, Cobol - I'm right at home and can run with the best of them... Web technologies like Perl, PHP, mySQL I'm still playing catchup.

    One thing I do hate is the equation some people do with the piece of paper to skill. This likely stems from when I was doing the hiring at a computer sales/repair place, and had people with masters and doctrates in computer science who couldn't even answer a simple question like "describe adding a second hard drive to a machine"

    Also stems from the fact I have yet to meet a computer eductator who I'd trust to find their way out of a piss soaked paper bag with a hole in the bottom. The classic phrase about "those who can't" always seems to apply in these cases... mostly stemming from them believing everything printed in some book being the Lord's own gospel, even when the moment you try to implement it one becomes painfully aware that 'the book' is total manure... again why I think we need to nuke the colleges from orbit and bring back full time apprenticeship - that way people might actually learn to DO something, instead of having one's head filled with BS theory and no actual implementation. (and stop bankrupting the world with unpaid loans)

    Of course, back before I retired I did get rather sick of going to interviews and being called "Overqualified and undereducated"

  18. #18
    Follow Me On Twitter: @djg gold trophysilver trophybronze trophy Dan Grossman's Avatar
    Join Date
    Aug 2000
    Location
    Philadephia, PA
    Posts
    20,578
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by deathshadow View Post
    Also stems from the fact I have yet to meet a computer eductator who I'd trust to find their way out of a piss soaked paper bag with a hole in the bottom.
    Maybe you've just seen bad CS programs. The classes I've taken recently have been taught by some great professors. Software engineering (design methodologies, testing, that kind of thing) was taught by a guy that was and is a consultant. He's gone out, designed and programmed systems for lots of companies and teaches from that much more than a textbook. I was taught algorithms by a guy who was a student of some of the professors at MIT and CMU that solved most of those algorithms in the 80s. Their work was right in the MIT Intro to Algorithms book most universities teach from.

    They don't teach because they can't do, they teach because they love sharing their experience twice a week while doing funded research the rest of it.

  19. #19
    Follow Me On Twitter: @djg gold trophysilver trophybronze trophy Dan Grossman's Avatar
    Join Date
    Aug 2000
    Location
    Philadephia, PA
    Posts
    20,578
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Alone? In a documented, extendible way which looks forward to the performance issues facing a web application? Perhaps 4-6 months of full time work I'd guesstimate.

    Now if they were to just start coding, wrote no documentation, didn't care about performance and didn't care about problems the site would face once it had a few thousand users and new developers on board trying to keep it going, you could probably hire a not-so-great programmer to clone the site in a month or less.

  20. #20
    SitePoint Wizard silver trophybronze trophy Cups's Avatar
    Join Date
    Oct 2006
    Location
    France, deep rural.
    Posts
    6,869
    Mentioned
    17 Post(s)
    Tagged
    1 Thread(s)
    Quote Originally Posted by chaosTheory View Post
    Hi guys, just wanted to ask a question, how should we rate ourselves as php developers?
    Heres a list, I look at this a couple of times a year...

    http://www.procata.com/blog/archives...t-programmers/

    Quote Originally Posted by chaosTheory View Post
    ...and what I should do to get to the next level.
    Well how would you describe your level now, and what typifies for you "the next level" ?

  21. #21
    SitePoint Addict rvdavid's Avatar
    Join Date
    Nov 2006
    Location
    Australia
    Posts
    233
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    That's a good link

  22. #22
    Web developer chrisranjana's Avatar
    Join Date
    Jan 2001
    Location
    chennai , tamil nadu , India
    Posts
    710
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    rating a php programmer

    Well rating should depend on many criteria

    as rightly pointed out here

    http://www.procata.com/blog/archives...t-programmers/

    Almost anyone having a great knowledge of a programming knowledge can score well in zend or brainbench tests.

    In my opinion a programmer can be considered an expert if he/she can translate *that* knowledge, to the requirements of a particular project or a client in a quick manner.

    Also a good programmer needs to think from the point of view of the end user and create simple feature rich interfaces.
    Chris, Programmer/Developer,
    Laravel Php Developers, Ruby on Rails programmers,
    Moodle, Opencart, Magento, Geodesic Classifieds/Auctions,
    www.chrisranjana.com

  23. #23
    SitePoint Wizard silver trophybronze trophy Cups's Avatar
    Join Date
    Oct 2006
    Location
    France, deep rural.
    Posts
    6,869
    Mentioned
    17 Post(s)
    Tagged
    1 Thread(s)
    Quote Originally Posted by rvdavid View Post
    That's a good link
    Selkirk posted that ages ago, I think it got moved, but I followed it. glad you liked it.

    I think another good test is to start replying to users questions on this forum or similar.

    Now that is sobering, and the funny thing is the more time you spend helping others, the more you bare yourself (and, dare I say it, your ineptitudes and misconceptions) to the world, the more you learn.

    I have found that really hard to bear sometimes, but sheesh, the stuff I have learnt from other developers is amazing.

    Then of course if you really want to test yourself, there is the acid test. Start hanging around the PAD forum.

    I also read somewhere, could have been on SP, that your own confidence level, be that over-confident or quiet head-down-learning - can be measured by how many unread programming books you have hanging around your desk, in the WC, in the kitchen (go on, count them).

    Four unread books indicating you are too engrossed in learning to ask yourself questions such as 'how am I doing?'.

    Four unread books means perhaps you are still hungry.
    Off Topic:

    Now I think of it I am interested in what others have "unread" - are they dead? or is it just you dont have time to finish them?

  24. #24
    Follow Me On Twitter: @djg gold trophysilver trophybronze trophy Dan Grossman's Avatar
    Join Date
    Aug 2000
    Location
    Philadephia, PA
    Posts
    20,578
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Cups View Post
    Off Topic:

    Now I think of it I am interested in what others have "unread" - are they dead? or is it just you dont have time to finish them?
    Most of "Agile Web Development with Rails", most of SitePoint's AJAX book, the second half of "Pragmatic Version Control Using Subversion"... a couple others... sounded interesting but didn't find them useful once I started reading. A couple of SitePoint's books have very specific examples in them (like AJAX interaction with Amazon web services) that would be good to have as references but I might not read until I need to.

    I never throw away a book, including every textbook I've bought for courses the past 4 years. I always get to know what's in there even if I don't read the entire book so I know what reference material I have on hand.

  25. #25
    SitePoint Member
    Join Date
    Mar 2006
    Posts
    22
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    The meaning of "good programmer" or "good programming" differ wildly depending on the situation.

    When I worked in prodution support for an investment bank, a "good program" was one which solved a business problem accurately and quickly. This meant the code was undocumented, messy, inefficient and sometimes even sloppy. The "best" methodologies rarely got a look-in, and quick-and-nasty shell scripts with no comments were the order of the day. But they were "good" programs because they perfectly solved a real-world problem in a short space of time. The code looked amateurish, and anyone here could pick it apart and say "why didn't you do this instead", but delivering something in 30 minutes instead of 3 hours could make a difference of millions of euros.

    When I worked for a large airline company on safety-critical systems, a "good" program was one that was as error-free as possible, fully documented, and easily understood by my peers. Nothing was ever cutting-edge, and the code was inefficient because understandability took precedence. But they were "good" programs because we had a very high degree of confidence that there were as few bugs as possible, and that if I got knocked over by a bus the guy who replaced me could understand every part of the system. That's important when you're talking about flight information, and it didn't matter that the code took 30 seconds to run instead of 3.

    When I write code for my personal projects, "good" programs are ones that are written the "right" way; those which are well designed, efficient, and clean. I have the luxury of answering only to myself, so I can do things how I want them. But it's very rare that we have that flexibility.

    So in my opinion, a "good" programmer is one who can solve real-world problems in an appropriate way. The definition of "appropriate" changes depending on the situation, and being able to understand what is appropriate when is a key skill that many people lack. Knowing when to hack together a scrappy shell script, and when to stand your ground and insist on a full-blown analysis / design / build / test cycle, makes all the difference.


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •