addressalign-toparrow-leftarrow-leftarrow-right-10x10arrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscontroller-playcredit-cardcrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobe--smallglobegmailgooglegroupshelp-with-circleimageimagesinstagramFill 1languagelaunch-new-window--smalllight-bulblightning-boltlinklocation-pinlockm-swarmSearchmailmediummessagesminusmobilemoremuplabelShape 3 + Rectangle 1ShapeoutlookpersonJoin Group on CardStartprice-ribbonprintShapeShapeShapeShapeImported LayersImported LayersImported Layersshieldstar-shapestartickettrashtriangle-downtriangle-uptwitteruserwarningyahooyoutube

Re: [php-139] skills of a programmer

From: Alan P.
Sent on: Wednesday, January 27, 2010, 1:51 PM
I'd agree with your simple categorization for the most part with the
exception that a "God" in my view is one who is intimately involved in
developing the language itself. eg people contributing to the
development of PHP6 and there should be something in-between that and
a hacker.

On Wed, Jan 27, 2010 at 1:42 PM, james <[address removed]> wrote:
> seems to come down to an old hacker pyramid/image i saw a few years back:
>
> script kiddie -- knows how to make websites in dreamweaver (lol) [which
> applies to some junior level from what i've seen described on this list]
> hacker -- junior to mid level programmer that can modify scripts
> god -- senior level that writes the scripts
>
> ? jms.
>
> On Wed, Jan 27, 2010 at 12:31 PM, ambert ho <[address removed]> wrote:
>>
>> And to better answer your question, James, "elegant" is subjective and
>> case-dependent.?For example, it would be ugly for me to write varying
>> amounts of comma separated values into a DB table instead of normalizing the
>> table. However this would be an elegant solution, if I was optimizing the
>> database for fast writes.
>> For code examples,
>> - the Zend codebase is pretty elegant, if you're looking for a great
>> reference on how to do OO php
>> - I thought the piwik codebase was pretty cool?https://piwik.org/­
>> - for javascript, the major libraries represent elegant code to look
>> through (jQuery, prototype, YUI, etc.). In general stuff posted on
>> www.ajaxian.com will be legit-ly elegant
>> - in general anything on github tends to be elegant (or at least cool),
>> because in general that community (and that of the users of git) is only
>> comprised of people who really, really care. And people who really, really
>> care tend to write elegant code
>>
>>
>> On Wed, Jan 27, 2010 at 12:16 PM, ambert ho <[address removed]> wrote:
>>>
>>> Well ugly vs. elegant is a very a "zen" kinda thing. You'll have to get a
>>> feel for what is:
>>> - simplest (as in few lines of code)
>>> - DRY (don't repeat yourself)
>>> - easy to read
>>> - easy to understand by another developer who has no idea what the hell
>>> you are doing
>>>
>>> But off the top of my head a random example is like: say you make a bunch
>>> of ajax calls to load in content, but one of the pages you want the logic to
>>> do something different (for example execute javascript functions instead of
>>> just loading up the page). How to differentiate the logic if on the
>>> clientside all you can do is make page requests?
>>> - An ugly way would be to set something at the beginning of the page and
>>> do a substr() or regex match for it. It's hackey for numerous reasons (like
>>> it would break if that string at the beginning of the page were changed, and
>>> also it's not clear to another developer what you are trying to do)
>>> - An elegant way would be to set something in the header to make its way
>>> into the returned transport object, and in your ajax handler do something
>>> like ( ? ?if responseText.handleT­hisPageDifferently, doThis() ? ) <-- this
>>> is more robust, and it's also clear to other developers what you are trying
>>> to accomplish
>>>
>>> The reason I know this example off the top of my head is b/c I'm doing
>>> the ugly way hahaha
>>> Ambert
>>>
>>>
>>> On Wed, Jan 27, 2010 at 11:59 AM, james <[address removed]> wrote:
>>>>
>>>> okay, so now i'm getting a better grip on this.
>>>>
>>>> i read about "elegance of a solution" a LOT but i don't see many
>>>> examples of that.? i have a pretty limited exposure, admittedly.
>>>>
>>>> can anyone point to some code bases that i can look over to get an
>>>> impression of "ugly" vs "elegant"?? that'd be pretty sweet.
>>>>
>>>> thanks everyone!
>>>>
>>>> ? james.
>>>>
>>>> On Wed, Jan 27, 2010 at 11:51 AM, Mike Arace
>>>> <[address removed]> wrote:
>>>>>­
>>>>>­ I think that figuring out baseline skills for each development level is
>>>>>­ impossible since each job is so different. The different levels correspond
>>>>>­ more (in my opinion) to the speed with which a developer will be able to
>>>>>­ solve a given problem, and, more importantly, the elegance of their
>>>>>­ solution. As a rough guide, junior people can hack together scripts, mid
>>>>>­ level people know of and utilize frameworks or existing code libraries, and
>>>>>­ senior people write their own frameworks.
>>>>>­
>>>>>­ Sent from my Nokia phone
>>>>>­ -----Original Message-----
>>>>>­ From: james
>>>>>­ Sent: ?01/27/[masked]:34:5­1 AM
>>>>>­ Subject: ?Re: [php-139] skills of a programmer
>>>>>­
>>>>>­ there are some things that should be quantifiable.
>>>>>­
>>>>>­ you should be able to crank through 1 million lines of text spread
>>>>>­ across
>>>>>­ 20,000 documents and find xzy.
>>>>>­ should be able to refactor an active database without loss of data.
>>>>>­
>>>>>­ that's the kind of stuff i'm trying to understand.
>>>>>­
>>>>>­ i agree that not all projects are created equal but there's a baseline
>>>>>­ skill
>>>>>­ set that people should have for each level.
>>>>>­
>>>>>­ interesting discussion so far. ?i hope we can get more info on this.
>>>>>­ ?:)
>>>>>­
>>>>>­ ?james.
>>>>>­
>>>>>­ On Wed, Jan 27, 2010 at 10:54 AM, emily blanchard
>>>>>­ <[address removed]>wrote:
>>>>>­
>>>>>­ > FWIW-Theses breakdowns make sense in a general way but Jr. Mid Sr. Is
>>>>>­ > relative to the type of development work you have been doing. All PHP
>>>>>­ > projects are not the same (obviously) the Jr. Person may have
>>>>>­ > experience
>>>>>­ > with something a Sr. Person hasn't worked much with and vise versa.
>>>>>­ > Value is
>>>>>­ > determined as much by what skills are listed on a resume as to how
>>>>>­ > when
>>>>>­ > where and what you did with them yourself. Explain what you have done
>>>>>­ > vis a
>>>>>­ > vis what the project needs are and sell your value based on specific
>>>>>­ > expeience. Not just that you have 3 or 6 yrs PHP. What did you
>>>>>­ > do/work on in
>>>>>­ > that time. We are people- and not to be purchased like off the shelf
>>>>>­ > items
>>>>>­ > in a grocery store- last I check I couldn't buy a 6 pack of PHP with
>>>>>­ > a loaf
>>>>>­ > of MSQL and a bag of Zend.- ;-)
>>>>>­ >
>>>>>­ > Sent via BlackBerry by AT&T
>>>>>­ > --------------------­----------
>>>>>­ > *From: * ransom1538 <[address removed]>
>>>>>­ > *Date: *Wed, 27 Jan[masked]:26:52 -0500
>>>>>­ > *To: *<[address removed]>
>>>>>­ > *Subject: *Re: [php-139] skills of a programmer
>>>>>­ >
>>>>>­ > In my humble opinion:
>>>>>­ >
>>>>>­ > Junior: someone right out of school, who may have one or two years
>>>>>­ > experience
>>>>>­ >
>>>>>­ > Mid level: anyone over three or so years experience with solid
>>>>>­ > development
>>>>>­ > experience, but hasn't had a chance to lead a team
>>>>>­ >
>>>>>­ > Senior: people able to run and lead three or more developers,
>>>>>­ > experienced
>>>>>­ > in delegating
>>>>>­ >
>>>>>­ >
>>>>>­ > On Wed, Jan 27, 2010 at 10:09 AM, james <[address removed]> wrote:
>>>>>­ >
>>>>>­ >> so, after all the rate discussions of late, i started thinking about
>>>>>­ >> what
>>>>>­ >> constitutes the different levels/pay-scales of a programmer.
>>>>>­ >>
>>>>>­ >> can someone describe the skill set of a 'junior programmer', a
>>>>>­ >> 'mid-level'
>>>>>­ >> and 'senior level' --other levels/statuses that i'm not mentioning?
>>>>>­ >> ?putting
>>>>>­ >> this in terms of PHP would be nice since this is a php group but
>>>>>­ >> describing
>>>>>­ >> languages known, capabilities within known languages, etc would be
>>>>>­ >> really
>>>>>­ >> helpful and interesting to me.
>>>>>­ >>
>>>>>­ >> thanks everyone!
>>>>>­ >>
>>>>>­ >> ? james.
>>>>>­ >>
>>>>>­ >>
>>>>>­ >>
>>>>>­ >>
>>>>>­ >> --
>>>>>­ >> Please Note: If you hit "*REPLY*", your message will be sent to
>>>>>­ >> *everyone
>>>>>­ >> * on this mailing list ([address removed])
>>>>>­ >> This message was sent by james ([address removed]) from The San
>>>>>­ >> Francisco PHP Meetup Group <https://www.sfphp....;­.
>>>>>­ >> To learn more about james, visit his/her member
>>>>>­ >> profile<https://www.sfphp....;­
>>>>>­ >> To unsubscribe or to update your mailing list settings, click
>>>>>­ >> here<https://www.meetup...;­
>>>>>­ >>
>>>>>­ >> ?Meetup, PO Box 4668 #37895 New York, New York[masked] |
>>>>>­ >> [address removed]
>>>>>­ >>
>>>>>­ >
>>>>>­ >
>>>>>­ >
>>>>>­ >
>>>>>­ >
>>>>>­ > --
>>>>>­ > Please Note: If you hit "*REPLY*", your message will be sent to
>>>>>­ > *everyone*on this mailing list (
>>>>>­ > [address removed])
>>>>>­ > This message was sent by ransom1538 ([address removed]) from The
>>>>>­ > San
>>>>>­ > Francisco PHP Meetup Group <https://www.sfphp....;­.
>>>>>­ > To learn more about ransom1538, visit his/her member
>>>>>­ > profile<https://www.sfphp....;­
>>>>>­ > To unsubscribe or to update your mailing list settings, click
>>>>>­ > here<https://www.meetup...;­
>>>>>­ >
>>>>>­ > ?Meetup Inc. PO Box 4668 #37895 New York, New York[masked] |
>>>>>­ > [address removed]
>>>>>­ >
>>>>>­ >
>>>>>­ >
>>>>>­ > --
>>>>>­ > Please Note: If you hit "*REPLY*", your message will be sent to
>>>>>­ > *everyone*on this mailing list (
>>>>>­ > [address removed])
>>>>>­ > This message was sent by emily blanchard ([address removed])
>>>>>­ > from The
>>>>>­ > San Francisco PHP Meetup Group <https://www.sfphp....;­.
>>>>>­ > To learn more about emily blanchard, visit his/her member
>>>>>­ > profile<https://www.sfphp....;­
>>>>>­ >
>>>>>­ > To unsubscribe or to update your mailing list settings, click
>>>>>­ > here<https://www.meetup...;­
>>>>>­ >
>>>>>­ > ?Meetup, PO Box 4668 #37895 New York, New York[masked] |
>>>>>­ > [address removed]
>>>>>­ >
>>>>>­
>>>>>­
>>>>>­
>>>>>­
>>>>>­ --
>>>>>­ Please Note: If you hit "REPLY", your message will be sent to everyone
>>>>>­ on this mailing list ([address removed])
>>>>>­ https://www.sfphp....­
>>>>>­ This message was sent by Mike Arace ([address removed]) from
>>>>>­ The San Francisco PHP Meetup Group.
>>>>>­ To learn more about Mike Arace, visit his/her member profile:
>>>>>­ https://www.sfphp....­
>>>>>­ To unsubscribe or to update your mailing list settings, click here:
>>>>>­ https://www.meetup...­
>>>>>­ Meetup Inc. PO Box 4668 #37895 New York, New York[masked] |
>>>>>­ [address removed]
>>>>>­
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Please Note: If you hit "REPLY", your message will be sent to everyone
>>>> on this mailing list ([address removed])
>>>> This message was sent by james ([address removed]) from The San
>>>> Francisco PHP Meetup Group.
>>>> To learn more about james, visit his/her member profile
>>>> To unsubscribe or to update your mailing list settings, click here
>>>>
>>>> Meetup, PO Box 4668 #37895 New York, New York[masked] |
>>>> [address removed]
>>
>>
>>
>>
>>
>> --
>> Please Note: If you hit "REPLY", your message will be sent to everyone on
>> this mailing list ([address removed])
>> This message was sent by ambert ho ([address removed]) from The San
>> Francisco PHP Meetup Group.
>> To learn more about ambert ho, visit his/her member profile
>> To unsubscribe or to update your mailing list settings, click here
>>
>> Meetup Inc. PO Box 4668 #37895 New York, New York[masked] |
>> [address removed]
>
>
>
>
> --
> Please Note: If you hit "REPLY", your message will be sent to everyone on
> this mailing list ([address removed])
> This message was sent by james ([address removed]) from The San Francisco
> PHP Meetup Group.
> To learn more about james, visit his/her member profile
> To unsubscribe or to update your mailing list settings, click here
>
> Meetup, PO Box 4668 #37895 New York, New York[masked] |
> [address removed]

People in this
group are also in: